在PHP中处理cURL

在PHP中处理cURL,php,symfony,http,curl,postman,Php,Symfony,Http,Curl,Postman,我正在尝试将一个登录web界面连接到AWS上已创建的身份验证活动存储库。对此我是新手,我尝试过使用Postman,使用JSON应用程序的原始模板,如下所示: { "userName" : "Victor", "userPassword" : "pwd123" } 它工作正常,我从我的存储库中得到了正确的答案。但是当我使用我的php项目来做这件事,并且我用完全相同的数据填充表单时,我收到一条状态:403消息:错误的用户名或密码 邮递员代码为我提供了用于CURLOPT_POSTFIELDS的解决方

我正在尝试将一个登录web界面连接到AWS上已创建的身份验证活动存储库。对此我是新手,我尝试过使用Postman,使用JSON应用程序的原始模板,如下所示:

{
"userName" : "Victor",
"userPassword" : "pwd123"
}
它工作正常,我从我的存储库中得到了正确的答案。但是当我使用我的php项目来做这件事,并且我用完全相同的数据填充表单时,我收到一条状态:403消息:错误的用户名或密码

邮递员代码为我提供了用于CURLOPT_POSTFIELDS的解决方案:

CURLOPT_POSTFIELDS => "{\n\t\"userName\" : \"Victor\",\n\t\"userPassword\" : \"pwd123\"\n}",
但是我需要用表单填写这些字段,所以我会按照我将向您展示的方式对它们进行更改

这是我正在使用的代码,我真的被卡住了,所以我将感谢您的帮助:)


我注意到,在我的身份验证存储库中,我有JSON格式的访问数据,并且我没有以JSON格式发送数据。为了修复它,我做了以下操作:

$fields = array("userName" => $uname, "userPassword" => $upass);
$fields = json_encode($fields);
我将该数组放在
CURLOPT_POSTFIELDS
中,并在
CURLOPT_HTTPHEADER
中将“content-type:application”更改为“content-type:application/json”


这样做解决了问题。

现在问题已经解决,我注意到在我的身份验证存储库中,我有JSON格式的acces数据,并且我没有以JSON格式发送数据,因此我所做的更正是:$fields=array(“userName”=>uname,“userPassword”=>upass)$fields=json_encode($fields);我将该数组放在CURLOPT_POSTFIELDS中,并在CURLOPT_HTTPHEADER中将“content-type:application”更改为“content-type:application/json”。无论如何谢谢,继续编码!!写下这个评论作为回答,并接受它。它将为您赢得一点声誉,并使其他开发人员更容易看到答案。
$fields = array("userName" => $uname, "userPassword" => $upass);
$fields = json_encode($fields);