目前使用Laravel 5.5和大嘴,与laravel安装程序一起。
我试图发出GET请求(其他HTTP请求也会出错),但似乎不起作用。
此代码不起作用:
public function callback(Request $request)
{
$code = $request->code;
$client = new Client(['exceptions' => false]);
try {
$response = $client->request('GET', 'http://localhost/api/tests');
// $response = $http->request('POST', Config::get('app.url') . '/oauth/token', [
// 'form_params' => [
// 'grant_type' => 'authorization_code',
// 'client_id' => Config::get('oauth_client.client_id'),
// 'client_secret' => Config::get('oauth_client.client_secret'),
// 'redirect_uri' => Config::get('oauth_client.redirect_uri'),
// 'code' => $code,
// ],
// ]);
// return json_decode((string) $response->getBody(), true);
} catch (\Exception $e) {
dd($e);
}
dd($response->getBody());
return;
}
但是下面的代码工作得非常好
public function callback(Request $request)
{
$code = $request->code;
$client = new Client(['exceptions' => false]);
try {
$response = $client->request('GET', 'https://www.google.co.id');
// $response = $http->request('POST', Config::get('app.url') . '/oauth/token', [
// 'form_params' => [
// 'grant_type' => 'authorization_code',
// 'client_id' => Config::get('oauth_client.client_id'),
// 'client_secret' => Config::get('oauth_client.client_secret'),
// 'redirect_uri' => Config::get('oauth_client.redirect_uri'),
// 'code' => $code,
// ],
// ]);
// return json_decode((string) $response->getBody(), true);
} catch (\Exception $e) {
dd($e);
}
dd($response->getBody());
return;
}
我不明白为什么我的古斯能够请求google.com但无法连接到我自己的localhost服务器(到所有端口)。
任何帮助都将不胜感激。
谢谢
设置'CURLOPT_SSL_VERIFYPEER'
选项为false
public function callback(Request $request)
{
$code = $request->code;
$client = new Client(['exceptions' => false, 'CURLOPT_SSL_VERIFYPEER' => false]);
try {
$response = $client->request('GET', 'http://localhost/api/tests');
// $response = $http->request('POST', Config::get('app.url') . '/oauth/token', [
// 'form_params' => [
// 'grant_type' => 'authorization_code',
// 'client_id' => Config::get('oauth_client.client_id'),
// 'client_secret' => Config::get('oauth_client.client_secret'),
// 'redirect_uri' => Config::get('oauth_client.redirect_uri'),
// 'code' => $code,
// ],
// ]);
// return json_decode((string) $response->getBody(), true);
} catch (\Exception $e) {
dd($e);
}
dd($response->getBody());
return;
}
在我的开发服务器上使用Apache2和虚拟主机解决了这个问题,这种方法比在Guzzle参数上做任何更改都更现实。
因此,我的结论是最好使用真正的web服务器(Nginx、Apache)而不是artisan服务。
它不起作用的原因是php artisan serve
使用php内置web服务器,这是单线程的。因此,如果您运行应用程序,在完成初始请求之前,它无法发出另一个请求(您的Guzzle请求)。这就是它挂起的原因(如本文所述)。
一种解决方案是(正如您所指出的)使用真正的多线程Web服务器。
但是,如果您仍然想使用php artisan serve
而不是像Nginx这样的web服务器,那么有一个简单的解决方案(我已经在另一期中发布了):
您可以使用另一个端口运行另一个web服务器实例,并将应用程序配置为在连接到API时使用此base\u uri
:
php artisan serve \\ defaults to port 8000
\\ in another console
php artisan serve --port=8001
$client->request('GET', 'http://localhost:8001/api/tests')
我试图从比特币市场RESTful API中获取不同的JSON。 问题是:我只能将单个GET请求逐个发送到API,因此我无法同时从所有比特币市场获取所有数据。 有没有办法使用Python线程(每个线程使用不同的客户端端口发送GET请求)同时获取多个数据?
问题内容: 我将后端API与使用它的前端HTML5应用程序分开作为一个单独的项目。我正在使用Yeoman进行前端开发。Yeoman在localhost:3501上运行,后端在localhost:3000上运行。当我从浏览器发出API请求时(使用AngularJS的$ http),我遇到了相同的原始策略: AFAIK,仅当在不同域中发出请求时,才应启动相同的来源策略。当我们从本地主机到本地主机(尽管
你好,朋友,我是一个新的flutter当我尝试在本地主机上发出http请求时,我得到了这个错误 E/Flutter(8392):[错误:Flutter/lib/ui/ui_dart_state.cc(157)]未处理异常:SocketException:OS错误:连接被拒绝,错误号=111,地址=127.0.0.1,端口=33200我正在本地主机上使用http pacakge与laravel应用程
在我的server.js中,我有这个
在ubunutu 14.04上安装tomcat7,使用 sudo apt-get install tomcat7 正在启动Tomcat servlet引擎tomcat7[OK] 但是我在本地主机上没有得到任何东西:8080 我也尝试更改默认端口,但不起作用。
本文向大家介绍Mac中使用Nginx实现80端口转发8080端口,包括了Mac中使用Nginx实现80端口转发8080端口的使用技巧和注意事项,需要的朋友参考一下 由于项目本身的原因,开发必须使用80端口实现,而在Unix内核中非Root用户无法直接使用1024以下的端口,最初作者找到了pfctl的方式实现80端口转发到8080端口实现访问,经过亲测出现了最为严重的问题,按照当时的方法配置好之后发