GET 请求适用于 CURL 但不适用于 URL

GET request works with CURL but not as a URL

这里有两个 GET 请求。在 php 中使用 CURL 的第一个有效,但由 HTML form 生成的第二个从响应服务器收到错误。

第一个(有效)是使用 CURL

的 GET 请求

1.

curl 'https://api.authy.com/protected/json/phones/verification/start' \
-d api_key=my_key\
-d via=sms \
-d phone_number=my_number\
-d country_code=my_code

第二个(不工作)是一个 GET 请求 URL 就像从 html 表单生成的请求 <form method='get'>

2.

https://api.authy.com/protected/json/phones/verification/start?api_key=my_key&via=sms&phone_number=my_number&country_code=my_code

使用第二个时响应服务器的错误信息是:

{"message":"Requested URL was not found. Please check http://docs.authy.com/ to see the valid URLs","success":false,"errors":{"message":"Requested URL was not found. Please check http://docs.authy.com/ to see the valid URLs"},"error_code":"60000"}

问题

第二个 GET 请求与 CURL GET 请求有什么区别?他们在我看来就像他们一样。

根据 https://www.twilio.com/docs/verify/api/verification 上的文档,您应该使用 POST 请求来使用 API,这就是 cURL 的 -d 选项所做的。

在您的第二次调用中,您发送了一个 GET 请求,根据文档和错误消息,该请求未成功