Jua*_*or 2 php authentication api get prestashop
我遇到这个问题我从prestashop启用了web服务,如果我直接从post方法http://underwearstudio.mx/pruebas/api?&ws_key="mykey " 传递参数,我可以访问它 .
但是,如果我尝试访问而不传递ws_key作为参数,它一直要求我进行身份验证.
从我在提示身份验证时阅读的内容中,您需要使用API密钥作为用户名并保留空白密码,但它只是不断提示身份验证.
我能做什么?
任何帮助将不胜感激
Muh*_*eri 13
对于像我这样的谷歌:
在当前版本1.6.1.1中,需要?&ws_key=YourSecretKey在url的末尾添加此代码[ ]并使用此方法访问webservice,因为传递为用户名(在文档中说明)不起作用
http://[YourPrestaShopUrl]/api?&ws_key=YourSecretKey
eg: http://192.168.1.148/api/products?limit=5&ws_key=EUQ1J6NT1KVJ1S9SYGRCLGQE8IJU66DA
Run Code Online (Sandbox Code Playgroud)
要使用webservice库完成此操作,您可以添加以下行:
$url .= '&ws_key=' . $this->key;
Run Code Online (Sandbox Code Playgroud)
在第116行(当前版本),在
protected function executeRequest($url, $curl_params = array())
Run Code Online (Sandbox Code Playgroud)
在初始化cURL之前:
$session = curl_init($url);
Run Code Online (Sandbox Code Playgroud)
这是我在这个请求中提出的
您可能会发现在图书馆工作的这要点,现在
从他们的文档来看,您似乎应该能够将 API 密钥放入 URL 中,以代替常规 HTTP 请求中用户名所在的位置,例如:
http://[yourapikeyhere]@example.com/api/customers/
Run Code Online (Sandbox Code Playgroud)
引用自“使用浏览器测试对 Web 服务的访问”:
商店应该提示您输入用户名和密码。ID是认证密钥,没有密码。
...似乎与您所说的用户名与密码相符。看起来这些人正在使用 API 密钥作为常规 HTTP 基本身份验证意义上的用户名,没有密码(否则就是http://user:password@example.com),这似乎与他们上面提供的 RESTful URL 示例相匹配。如果通过浏览器进行的基本身份验证不起作用,我建议您的 API 密钥更有可能是错误的 - 请记住它很可能区分大小写。
| 归档时间: |
|
| 查看次数: |
7736 次 |
| 最近记录: |