什么是与API相关的回调网址?

时间:2014-04-28 17:06:50

标签: api callbackurl

我一直在网上搜索,似乎无法绕过回调网址的想法。在我的情况下,我有一些我必须自己定义的回调URL。一个流行的是"默认回调URL"。这究竟是什么?你能用英文举个例子吗?

6 个答案:

答案 0 :(得分:54)

回调网址将在您完成后调用的API方法中调用。所以,如果你打电话

POST /api.example.com/foo?callbackURL=http://my.server.com/bar

然后,当/foo完成后,它会向http://my.server.com/bar发送请求。该请求的内容和方法将有所不同 - 请查看您正在访问的API的文档。

答案 1 :(得分:11)

将其视为字母。有时候,您会收到一封信,说要您填写表格,然后将表格寄回一个预先寻址的信封,该信封位于存放该表格的原始信封中。

填写完表格后,将其放入提供的返回信封中并寄回。

callbackUrl类似于返回信封。您基本上是说我正在向您发送此数据。完成后,我将在这个callbackUrl上等待您的回复。因此,API将处理您发送的数据,然后查看回调以向您发送响应。

这很有用,因为有时您可能需要花费很多时间来处理某些数据,并且让调用方等待响应是没有意义的。例如,假设您的API允许用户向其发送文档并对其进行病毒扫描。然后您发送报告。扫描可能需要3分钟。用户不能等待3分钟。因此,您确认自己已收到文档,并在进行扫描时让呼叫者继续进行其他业务,然后在完成时使用callbackUrl告诉他们扫描结果。

答案 2 :(得分:6)

如果使用回调URL,则API可以连接到回调URL并发送或接收一些数据。这意味着API可以稍后(在API调用之后)与您连接。

示例

Diagram

  1. 使用请求向 API
  2. 发送数据
  3. API 使用第二个请求将数据发送到 YOU

确切的定义应该在API文档中。

答案 3 :(得分:3)

我将为您简化这一过程。启动事务后,它将进入处理阶段,直到到达终止阶段。一旦到达终端阶段,交易状态就会由付款网关发布到回调URL,通常商家会以此为参考向用户显示成功/失败页面。希望这会有所帮助吗?

答案 4 :(得分:1)

另一个用例可能是类似OAuth的情况,它可能不会直接由API调用,而是在完成对身份提供者的身份验证后,浏览器会调用回调URL。

通常,在最终用户输入用户名密码后,身份服务提供商会触发浏览器重定向到您的带有临时授权码的“回调” URL,例如

https://example.com/callback?code=AUTHORIZATION_CODE

然后,您的应用程序可以使用此授权代码向具有更长寿命的身份提供者请求访问令牌。

答案 5 :(得分:0)

这是一种以异步方式调用API的机制。顺序如下

  1. 您的应用调用URL,并将回调URL作为参数传递
  2. api用20倍的http代码响应(我想是201,但请参考api文档)
  3. API会在您的请求下工作一段时间
  4. api会在回调URL地址处调用您的应用以为您提供结果。

例如,您可以调用api并告诉您的用户请求是“正在处理”还是“已获取”,然后在收到api的响应时更新状态。

希望有道理。 -G