0
我想從運行在nginx服務器上的php代碼發送請求到另一個遠程django服務器。我期望使用序列化器在REST API中獲取數據。php發送獲取請求信息
首先,如果我打開我的本地瀏覽器鏈接:
我會得到:
HTTP 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept
[
{
"id": "000e3588-9544-4df6-a589-cc0166242b5b",
"docfile": "/media/documents/2017/06/30/DSC03623.JPG"
},
{
"id": "3dc6be9f-8659-41d8-8282-b64662032da6",
"docfile": "/media/documents/2017/06/30/DSC03611_9KWbftQ.JPG"
},
{
"id": "28eacb2d-0798-46e9-b63e-10ff704482ce",
"docfile": "/media/documents/2017/06/30/DSC03555.JPG"
}
]
而這也正是我想,當信息我運行我的PHP代碼。
這是我工作的,註釋的部分是以前失敗的嘗試:
<?php
echo "<h1>I am here</h1>";
$url = "http://192.168.2.0:8000/myapp";
/*$body = http_parse_message(http_get($url))->body;
$body = http_get($url);
echo $body;*/
/*$client = new Client($url);
$request = $client->newRequest('/documents/');
$response = $request->getResponse();
echo $response->getParsedResponse();*/
$r = new HttpRequest('http://192.168.2.0:8000/myapp/documents/', HttpRequest::METH_GET);
$r->send();
echo $r->getResponseCode();
if ($r->getResponseCode() == 200)
{
echo "<h2>we get 200 response</h2>";
}
?>
打印任何東西,除了第一回聲上述3次的非
我在這裏
好吧,首先加入一個ELSE給你,如果'else else {echo'actual response ='。 $ R-> getResponseCode(); }'看看你做什麼回來 – RiggsFolly
我加了它並沒有顯示任何內容。 爲什麼我沒有添加一個else語句int首先是因爲我正在監視另一臺PC上的django服務器。當我運行php代碼時,沒有請求到達django。好像沒有創建http連接 –
那麼告訴我們你看到的是在其他服務器上報告的內容 – RiggsFolly