Good Day有人可以帮助我使用guzzle发布数据数组吗,我已经遵循了guzzle文档的文档,但我不知道缺少什么。
路由:sync.php
$api->version('v1', [
'prefix' => 'api/v1',
],
$api->group([
'prefix' => 'sync'
], function ($api) {
$api->post('/accounts', 'App\Http\Controllers\SyncController@sync_accounts');
$api->get('/updateaccount', 'App\Http\Controllers\SyncController@updateaccounts');
});
]);
控制器:SyncController
use GuzzleHttp\Client;
use Illuminate\Http\Request;
public function updateaccounts()
{
$data = array('listid' => 'ListID',
'Name'=> 'Name',
'parentname'=> 'ParentRefFullName',
'fullname'=> 'FullName');
$http_call = new Client(['base_uri' => URL_CLOUD]);
$res = $http_call->post('sync/accounts/', [json_encode($data)]);
dd($res);
}
public function sync_accounts(Request $patch, $id)
{
$data = $patch->getContent();
return $data;
}
我的问题是
“错误”:{ “ message”:“客户端错误:POST http://.../api/v1/sync/accounts/导致405方法不允许响应:\ n {\” error \“:{\” message \“:\” 405方法不允许\“,\” status_code \“:405}} \ n”, “代码”:405, “状态码”:500 }
答案 0 :(得分:1)
jQuery.validator.methods["date"] = function (value, element) { return true; }
意味着您向该端点发出了错误的请求,即get-> post或posting to get。
您的网址似乎有一个Http 405
,它没有定义为前缀,因此,如果您改用此网址,则:
v1