将Yii应用程序中的X_CSRF令牌发送到Laravel API

时间:2017-06-09 17:57:28

标签: php laravel api yii csrf

我正在尝试从API网络应用程序拨打Yii 2来调用Laravel中开发的API。现在,只要发出X_CSRF请求,Laravel就会期望POST令牌。我发送了由csrf生成的Yii令牌,但是Laravel API不接受它。现在,如何通过API调用发送X_CSRF令牌?

CODE

curl_setopt($ch, CURLOPT_URL, "http://endpoint.url");
                curl_setopt($ch, CURLOPT_POST, 1);
                curl_setopt($ch, CURLOPT_POSTFIELDS,
                    http_build_query([
                        'phone' => Yii::$app->session->get('number'),
                        'first_name' => $model->first_name,
                        'last_name' => $model->last_name,
                        'email' => $model->email,
                        'password' => $model->passcode,
                        'x_csrf' => $_csrf
                    ]));

// receive server response ...
                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                $server_output = curl_exec($ch);
                curl_close($ch);
                print_r($server_output);

这是输出:

  

{ “标题”:“未授权   请求 “ ”细节“:{ ”类型“: ”invalid_x_csrf_token“, ”消息“:” 无效   x-csrf令牌提供了“},”代码“:401}

0 个答案:

没有答案