Php 使用guzzle向基于laravel的应用程序发送post请求
我的本地主机上有2个laravel应用程序(用于测试目的)。。。我希望我的第一个laravel应用程序将POST数据发送到我的第二个laravel应用程序,然后将这些数据保存到mysql数据库 这是我的第一条laravel应用程序路线Php 使用guzzle向基于laravel的应用程序发送post请求,php,mysql,laravel,guzzle,Php,Mysql,Laravel,Guzzle,我的本地主机上有2个laravel应用程序(用于测试目的)。。。我希望我的第一个laravel应用程序将POST数据发送到我的第二个laravel应用程序,然后将这些数据保存到mysql数据库 这是我的第一条laravel应用程序路线 Route::get('post_请求',函数() { $client=new\GuzzleHttp\client(); $url=”http://bkculv5.local/api_post"; $response=$client->post($url[ “
Route::get('post_请求',函数()
{
$client=new\GuzzleHttp\client();
$url=”http://bkculv5.local/api_post";
$response=$client->post($url[
“json”=>[
“朱杜尔”=>“标题”、“内容”=>“康腾”
]]);
});
这是我的第二条laravel应用程序路线
Route::post('/api_post',函数(Request$Request){
$judul=$request->judul;
$content=$request->content;
$artikel=新应用程序\artikel;
$artikel->judul=$judul;
$artikel->content=$content;
$artikel->save();
});
我得到的是
服务器错误:POSThttp://bkculv5.local/api_post
导致500
内部服务器错误
响应:
当我将myfirstapplaravel.local/api_post
放入浏览器时
知道为什么吗?或者在ajax中使用post时需要使用X-CSRF-TOKEN吗
更新
这是我在ApacheXAMPP中的错误日志
[Thu Jul 20 15:26:35.201109 2017] [core:error] [pid 1500:tid 604] (EAI 11002)APR does not understand this error code: AH00549: Failed to resolve server name for 36.86.63.180 (check DNS) -- or specify an explicit ServerName
[Thu Jul 20 15:26:35.439807 2017] [ssl:warn] [pid 1500:tid 604] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Thu Jul 20 15:26:35.487845 2017] [mpm_winnt:notice] [pid 1500:tid 604] AH00354: Child: Starting 150 worker threads.
在Windows主机文件中添加您的Laravel应用程序IP,也不要忘记CORS。希望有帮助。有时https也会引起问题,但它们的库中总是有API来跳过安全检查(仅用于开发目的) 或者,如果需要禁用SSL验证:
$client->setDefaultOption('verify', false);
您在日志文件中遇到了什么错误?这应该有助于您不知道如何在此处实现它…添加问题中的相应标头,是的,我已将IP放入主机文件“127.0.0.1 bkculv5.local”中,请尝试CORS并跳过https安全检查。当我在Laravel中使用guzzle时,我也有这个错误。我通过以下方式解决了https问题:
$client->setDefaultOption('verify', false);