我有两个用户界面,一个用于order.html
,另一个用于ledger.html
在localhost
上的两个不同端口3000和8000上运行。在order
页面上,用户可以下订单。下订单后,信息将作为POST
请求发送到端口8000上的服务器。
以下是从order.html
页面到具有端口8000的服务器的发布请求
$scope.sendPostRequest=function(){
var dataToBeSent = $scope.postData;
$http({
method: 'POST',
url: 'http://127.0.0.1:8000/receiveOrder',
headers: { 'Content-Type': 'text/plain' },
data: 'some random data'
}).then(function successCallback(response) {
//extracts key:value pairs from the json sent back
$scope.postResponse= someResponse
}, function errorCallback(error) {
// some error handler functions here
})
}
以下是接收上述请求的端口8000的快速代码。
app.post('/receiveOrder', function(req, res){
console.log('type of request '+Type(req));
//extract the text passed in data section of the post request
//TODO: Use the data received to update the dashboard, ledger.html
//send some response back as confirmation
});
收到POST
请求并使用body-parser
解析发送的数据后,我需要更新ledger.html
页面的用户界面以显示此信息。
基本上,ledger.html
会实时跟踪用户下达的订单。这是一个仪表板,新订单在放置时会不断添加。我无法实现上述目标。
我已尝试使用socket.io
来使用event-emitters
,但不能走得太远。我有一个针对MongoDB中的订单数据的架构设置,以防我需要它。
我可以就如何实现上述目标提供一些指导。