POST使用cURL和PHP中的x-www-form-urlencoded返回访问被拒绝

我已经能够使用适用于chrome的Advanced Rest Client Extension将POST查询发送到特定的HTTPS服务器,并且得到状态代码:200-确定,其主体字段与此代码中使用的主体字段相同,但是当我运行以下代码我得到此响应:403-访问被拒绝。

<?php
$postData = array(
'type' => 'credentials',
'id' => 'exampleid',
'secret_key' => 'gsdDe32dKa'
);

// Setup cURL
$ch = curl_init('https://www.mywebsite.com/oauth/token');
curl_setopt_array($ch, array(
CURLOPT_POST => TRUE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HTTPHEADER => array('Content-Type: application/x-www-form-urlencoded'
),
CURLOPT_POSTFIELDS => json_encode($postData)
));

// Send the request
$response = curl_exec($ch);

var_dump($response);

// Check for errors
if($response === FALSE){
die(curl_error($ch));
}

// Decode the response
$responseData = json_decode($response, TRUE);

// Print the date from the response
echo $responseData['published'];
?>

我也注意到,当我使用适用于chrome的Advanced Rest Client Extension时,如果将Content-Type设置为application / json,我必须输入一个登录名和一个密码,我不知道这些是什么,因为即使我输入我在代码中拥有的ID和密钥,它会返回401未经授权。因此,我猜我编写的这段代码没有将其强制为内容类型:application / x-www-form-urlencoded,但我不确定。感谢您在此问题上的任何帮助!

安托万·米尔科夫(Antoine Milkov)

您可以这样尝试一下,看看是否有帮助:

curl_setopt_array($ch, array(
    CURLOPT_POST => TRUE,
    CURLOPT_RETURNTRANSFER => TRUE,
    CURLOPT_COOKIEFILE => 'cookie.txt',
    CURLOPT_COOKIEJAR => 'cookie.txt',
    CURLOPT_USERPWD => 'username:password', //Your credentials goes here
    CURLOPT_HTTPHEADER => array('Content-Type: application/x-www-form-urlencoded'),
    CURLOPT_POSTFIELDS => http_build_query($postData),
));

我猜该网站希望在secret_key您已经提供的基础上进行简单的身份验证
也可以发送Cookie,以防万一,最好存储它并在下一次Curl调用中再次使用它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

POST使用cURL和PHP中的x-www-form-urlencoded返回访问被拒绝

来自分类Dev

改造+ POST方法+ www-form-urlencoded

来自分类Dev

解析ExpressJS中的application / x-www-form-urlencoded

来自分类Dev

如何在SoapUI中设置x-www-form-urlencoded?

来自分类Dev

如何使用Fetch发布x-www-form-urlencoded请求?

来自分类Dev

如何在Rails中使用x-www-form-urlencoded

来自分类Dev

使用标题应用程序/ x-www-form-urlencoded进行curl发布

来自分类Dev

使用 HttpClient 从内容类型 application/x-www-form-urlencoded 使用 grant_type 和 scope POST

来自分类Dev

如何使用角度2中的JWT和x-www-form-urlencode访问spring API

来自分类Dev

发布应用程序/ x-www-form-urlencoded Alamofire

来自分类Dev

Javascript:从x-www-form-urlencoded请求获取参数值

来自分类Dev

ModelAttribute未映射application / x-www-form-urlencoded

来自分类Dev

处理申请/ x-www-form-urlencoded帖子

来自分类Dev

Jsoup发送application / x-www-form-urlencoded而不是json

来自分类Dev

NodeJS 从 formData x-www-form-urlencoded 获取值

来自分类常见问题

如何使用x-www-form-urlencoded强制Angular2进行POST

来自分类Dev

使用POST + application / x-www-form-urlencoded发送敏感数据

来自分类Dev

Akka HTTP 如何使用 Content-Type application/x-www-form-urlencoded POST singleRequest

来自分类Dev

multipart / form-data和application-x-www-form-urlencoded有什么区别?

来自分类Dev

如何将 x-www-form-urlencoded post Message 转换为 JSON post Message?

来自分类Dev

Windows Phone 8.1 POST x-www-form-urlencoded无法正常工作

来自分类Dev

RestSharp在POST上默认将Content-Type设置为application / x-www-form-urlencoded

来自分类Dev

带有application / x-www-form-urlencoded格式的Node.js Axios POST请求?

来自分类Dev

Angularjs $http.post 联系表单 7,内容类型为 application/x-www-form-urlencoded

来自分类Dev

PowerShell - Slack API - 房间历史 - 带有 x-www-form-urlencoded 参数的 Post 方法

来自分类Dev

如何在webclient的post请求中发送x-www-form-urlencoded?

来自分类Dev

ajax,setRequestHeader(),Content-Type,application / x-www-form-urlencoded和charset

来自分类Dev

如何在内容类型 application/x-www-form-urlencoded 中使用自定义对象测试 Post 请求?

来自分类Dev

如何使用带有 loopj-async-http 库的 x-www-form-urlencoded 主体发送 post 请求

Related 相关文章

  1. 1

    POST使用cURL和PHP中的x-www-form-urlencoded返回访问被拒绝

  2. 2

    改造+ POST方法+ www-form-urlencoded

  3. 3

    解析ExpressJS中的application / x-www-form-urlencoded

  4. 4

    如何在SoapUI中设置x-www-form-urlencoded?

  5. 5

    如何使用Fetch发布x-www-form-urlencoded请求?

  6. 6

    如何在Rails中使用x-www-form-urlencoded

  7. 7

    使用标题应用程序/ x-www-form-urlencoded进行curl发布

  8. 8

    使用 HttpClient 从内容类型 application/x-www-form-urlencoded 使用 grant_type 和 scope POST

  9. 9

    如何使用角度2中的JWT和x-www-form-urlencode访问spring API

  10. 10

    发布应用程序/ x-www-form-urlencoded Alamofire

  11. 11

    Javascript:从x-www-form-urlencoded请求获取参数值

  12. 12

    ModelAttribute未映射application / x-www-form-urlencoded

  13. 13

    处理申请/ x-www-form-urlencoded帖子

  14. 14

    Jsoup发送application / x-www-form-urlencoded而不是json

  15. 15

    NodeJS 从 formData x-www-form-urlencoded 获取值

  16. 16

    如何使用x-www-form-urlencoded强制Angular2进行POST

  17. 17

    使用POST + application / x-www-form-urlencoded发送敏感数据

  18. 18

    Akka HTTP 如何使用 Content-Type application/x-www-form-urlencoded POST singleRequest

  19. 19

    multipart / form-data和application-x-www-form-urlencoded有什么区别?

  20. 20

    如何将 x-www-form-urlencoded post Message 转换为 JSON post Message?

  21. 21

    Windows Phone 8.1 POST x-www-form-urlencoded无法正常工作

  22. 22

    RestSharp在POST上默认将Content-Type设置为application / x-www-form-urlencoded

  23. 23

    带有application / x-www-form-urlencoded格式的Node.js Axios POST请求?

  24. 24

    Angularjs $http.post 联系表单 7,内容类型为 application/x-www-form-urlencoded

  25. 25

    PowerShell - Slack API - 房间历史 - 带有 x-www-form-urlencoded 参数的 Post 方法

  26. 26

    如何在webclient的post请求中发送x-www-form-urlencoded?

  27. 27

    ajax,setRequestHeader(),Content-Type,application / x-www-form-urlencoded和charset

  28. 28

    如何在内容类型 application/x-www-form-urlencoded 中使用自定义对象测试 Post 请求?

  29. 29

    如何使用带有 loopj-async-http 库的 x-www-form-urlencoded 主体发送 post 请求

热门标签

归档