亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

沒有得到預期的 PHP cURL 響應

沒有得到預期的 PHP cURL 響應

PHP
慕尼黑5688855 2021-10-22 15:00:31
我有以下 PHP 代碼:<?php$data = array("client_id" => "sipgate-app-web", "grant_type" => "password", "username" => "my_username", "password" => "my_password");$data_string = json_encode($data);$ch = curl_init('https://api.sipgate.com/login/sipgate-apps/protocol/openid-connect/token');curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded','Accept: application/json'));$result = curl_exec($ch);echo $result;?>不幸的是,我沒有得到預期的回應。我收到的回復是:{"error":"invalid_request","error_description":"缺少表單參數:grant_type"}當使用像https://onlinecurl.com這樣的在線 cURL 工具和我的 cURL PHP 代碼中相同的數據(URL、標題、數據)時,我得到了正確的響應。這意味著,我的 PHP 代碼有問題。我在 PHP 錯誤日志中沒有收到任何錯誤。手冊說我必須使用以下 cURL 代碼: curl \--request POST \--header 'Content-Type: application/x-www-form-urlencoded' \--header 'Accept: application/json' \--data-urlencode "client_id=sipgate-app-web" \--data-urlencode "grant_type=password" \--data-urlencode "username=my_username" \--data-urlencode "password=my_password" \https://api.sipgate.com/login/sipgate-apps/protocol/openid-connect/token由于我是 cURL 的新手,在谷歌搜索了很多之后,我不知道我做錯了什么。有誰能夠幫助我?編輯:您可以按原樣測試我上面的 PHP 代碼。如果代碼正常工作,您應該得到以下響應:{"error":"invalid_grant","error_description":"無效的用戶憑據"}
查看完整描述

2 回答

?
手掌心

TA貢獻1942條經驗 獲得超3個贊

按照說明書,你的要求需要有Content-Typeapplication/x-www-form-urlencoded,看起來像這樣:

key1=value1&key2=value2

因此,您需要手動或使用 將數組轉換為這樣的字符串http_build_query,如下所示:

$data_string = http_build_query( $data );


查看完整回答
反對 回復 2021-10-22
  • 2 回答
  • 0 關注
  • 159 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號