laravel Guzzle发布数据数组

时间:2018-07-06 08:05:23

标签: php laravel guzzle

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 }

1 个答案:

答案 0 :(得分:1)

jQuery.validator.methods["date"] = function (value, element) { return true; } 意味着您向该端点发出了错误的请求,即get-> post或posting to get。

您的网址似乎有一个Http 405,它没有定义为前缀,因此,如果您改用此网址,则:

v1