如何在同一服务器(本地)内从Nodejs发送json数据到Php?

时间:2016-08-30 11:03:20

标签: php json node.js

我有Nodejs代码SSE( Server-Sent-Events ),这里为每个事件触发并提供一些json数据。如何在不调用任何POST URL的情况下将json数据发送到其他PHP文件,

需要将json数据发送到同一服务器中的其他php文件。

  

的NodeJS

//including Event Source
var EventSource = require('eventsource');
var request     = require('request'); 

var es  = new EventSource('http://api.xyz.com:8100/update/');

//Listening URL Event Sourse 
es.addEventListener('message', function (e) { 

    //Extract Json
    var extractData =  JSON.parse(e.data); 

    if(extractData.type == 'CALL' )
    {  
       console.log(extractData);

        //you can call a function 
        postDataToAFile(extractData); 

    }
});

//Post Details to same server
function postDataToAFile(SendingDetails)
{ 
    var ServerURL = 'http://api.xyz.com/get_details/';

    request({
        url    : ServerURL,
        method : "POST",
        json   : true,
        body   : SendingDetails
    }, function (error, response, body){
        console.log(body);       
    });
}

以上代码使用POST URL,而我们可以使用文件路径发送Json数据

1 个答案:

答案 0 :(得分:0)

您可以使用表单数据。一个库,用于创建可读的" multipart / form-data"流。可用于将表单和文件上传提交到其他Web应用程序。

此库的API受XMLHttpRequest-2 FormData接口的启发。

Route::group(array('prefix' => 'admin', 'namespace' => 'Admin', 'middleware' =>'manager'), function () {
    Route::get('users', 'UsersController@index');
    Route::get('users/{id?}/edit', 'UsersController@edit');
    Route::post('users/{id?}/edit','UsersController@update');

    Route::get('roles', 'RolesController@index');
    Route::get('roles/create', 'RolesController@create');
    Route::post('roles/create', 'RolesController@store');
});

https://www.npmjs.com/package/form-data