我正在尝试使用两个键/值传递对象,当我将Apache连接到它时,我想在另一端读取它。
我的nodejs服务器如下所示:
var sWeather = {"url1": "something", "url2": "another"};
var oWeather = JSON.stringify(sWeather);
console.log(sWeather);
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(sWeather+'\n');
}).listen(1340, '#');
console.log('Server running at http://###/');
现在我对nodejs真的很陌生,我尝试了很多东西,所以我不确定在发送之前是否需要对sWeather
进行字符串化。
我的PHP文件是这样的:
<?php
$responseFromNode = file_get_contents("IP address");
var_dump($responseFromRuby);
现在我因string '[object Object]
而在我的网页上获得了var_dump
。
我尝试过像
这样的事情$url1 = $responseFromNode->url1
或
$url1 = $responseFromNode['url1']
我只想将两个网址作为字符串访问,以便我可以存储它。
任何提示都将受到高度赞赏。
答案 0 :(得分:3)
oWeather
是JSON字符串。改变
res.end(sWeather+'\n');
要
res.end(oWeather+'\n');
然后PHP方必须解码JSON
$responseFromNode = json_decode( file_get_contents("IP address") );
备注:强>
res.writeHead(200, {'Content-Type': 'application/json'});
,如Brian Glaz oWeather
应该是对象sWeather
应该是JSON字符串