簡體   English   中英

在同構javascript中處理HTTP請求

[英]Handling HTTP requests in isomorphic javascript

我有一個純粹的前端javascript項目,其中包含許多模型,這些模型封裝了與各種RESTful Web服務的不同交互。 我的目標是將這些模型拉入他們自己的npm模塊,以便讓他們在我正在編寫的新節點應用程序中使用服務器端。

模型使用XMLHttpRequest對象,顯然在服務器上未定義。 我不能在我的模型中要求('http'),因為當我嘗試為客戶端構建時,browserify會拋出錯誤。

如何處理可在服務器和客戶端上運行的HTTP請求? 我想要的是:

var ajax = {
    get: function (url, opts) {
        if (typeof XMLHttpRequest === 'undefined') {
            // is node app
            var http = require('http');
            ...
        } else {
            // is browser app
            var xhr = new XMLHttpRequest();
            ...
        }
    },
    post: ...
};

一個標准就是Superagent 無論您是在客戶端(xhr)還是服務器(http)上,API都是相同的,因此無需重復代碼或檢查要使用的協議。 還有一些庫也將它變成了承諾,這真的很棒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM