curl_init访问api返回Access denied.

Laravel
这是我调用,自己调用接口的代码的结果
Laravel
用 php 的 curl_init 和 Client 访问第三方 api 返回这个错误 Access denied.
用 Java 访问也是返回 Access denied.

但是用 postman 访问那个接口可以正常访问
用 ajax 也可以正常获取数据

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 13

问题描述的不够清楚,难以回答

1年前 评论

postman 可以将请求转换成真实的 curl 请求,将这条命令跟 curl_init 对比下

1年前 评论
jin-l (楼主) 1年前
kis龍 (作者) 1年前
jin-l (楼主) 1年前

使用代理抓一下包对比一下

1年前 评论

看 postman 也是 Access denied 啊, 只不过显示了 header 头。:sweat_smile:
Access denied 一看就是没有权限或者认证通不过。看下第三方 API 是要携带 cookie 还是 token 啊。

1年前 评论
jin-l (楼主) 1年前

看 postman 的请求头、请求参数,对比一下

1年前 评论

content-type 的问题吧

1年前 评论

可能是传输格式不一样,提供的数据不正确,建议通过代理抓请求包看看区别

1年前 评论

postman 支持将请求转成 php curl,你将 postman 的代码复制到项目中测下,如果没问题的话,对比下两者。

我觉得你这个可能式 header 格式有问题

1年前 评论
jin-l (楼主) 1年前