Skip to content

API Key 的 notify_url 字段目前是死配置,后台可编辑但订单和回调流程都不会使用 #41

@jiamovo

Description

@jiamovo

现在后台 API key 管理里有 notify_url 字段,创建和编辑都能传,数据库里也会保存,但实际下单和回调流程并不会使用它。

相关代码:

  • src/controller/admin/api_key_controller.go:15-23
  • src/controller/admin/api_key_controller.go:99-105
  • src/controller/admin/api_key_controller.go:159-168
  • src/model/mdb/api_key.go:14-24
  • src/model/request/order_request.go:6-16
  • src/model/service/order_service.go:109-120
  • src/mq/worker.go:229-264

当前行为:

  • API key 创建/更新接口允许写入 notify_url
  • 但订单创建请求里,notify_url 仍然是必填项,并且是直接写进 orders.notify_url
  • 回调 worker 发通知时,始终使用 order.NotifyUrl
  • 代码里没有看到任何地方会把 api_keys.notify_url 作为默认值、兜底值或回调目标使用

影响:

  • 后台页面会给人一种“API key 级别可以配置回调地址”的预期
  • 实际上这个字段不生效,属于误导性配置
  • 运维或接入方很容易以为自己已经配好了默认回调,结果线上并不会走这里

建议:

  • 如果暂时不打算支持 API key 级别默认回调,建议把这个字段从管理接口和页面里去掉。
  • 如果想保留,就需要补上明确的生效规则,比如:
    • 订单请求显式传了 notify_url 时,以订单为准
    • 没传时回退到 api_keys.notify_url
  • 无论采用哪种方式,建议在文档里把优先级写清楚。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions