簡體   English   中英

無法使用流星http包獲取結果數據

[英]Not getting result data using meteor http package

我試圖通過使用Meteor http軟件包進行api調用來從服務器檢索數據。 我已經在服務器端的方法內部編寫了api調用。 在客戶端上,我正在對服務器上的方法執行Meteor.call() 問題是,沒有在流星中獲取所需的JSON數據,而在瀏覽器中測試URL時卻獲取了數據。

我檢查了堆棧中的其他帖子,但是他們沒有鍛煉。 請幫助我,為什么結果不正確。

 // on server

    'get_list' : function () {

        var url = "http://10.10.2.48/api/content?type=apartment"; //this is a dummy url due to security reasons.

        Meteor.http.get(url,function(error, result){
            console.log(result);
            return result;
        });
    }

我的“ GET”電話收到406錯誤。 下面是它的結果。

{ statusCode: 406,
    content: '',
    headers: 
    { 
        date: 'Wed, 26 Mar 2014 06:50:53 GMT',
        server: 'Apache/2.2.22 (Debian)',
        'x-powered-by': 'PHP/5.4.4-14+deb7u7',
        expires: 'Sun, 19 Nov 1978 05:00:00 GMT',
       'last-modified': 'Wed, 26 Mar 2014 06:50:53 +0000',
       'cache-control': 'no-cache, must-revalidate, post-check=0, pre-check=0',
       etag: '"1395816653"',
       vary: 'Accept,Accept-Encoding',
       'content-length': '0',
       'keep-alive': 'timeout=5, max=100',
       'connection: 'Keep-Alive',
       'content-type': 'text/html' 
    },
    data: null 
}

我也嘗試過“ POST”通話,但收到404錯誤。 下面是它的結果。

 { statusCode: 404,
        content: '',
        headers: 
        { 
            date: 'Wed, 26 Mar 2014 06:50:53 GMT',
            server: 'Apache/2.2.22 (Debian)',
            'x-powered-by': 'PHP/5.4.4-14+deb7u7',
            expires: 'Sun, 19 Nov 1978 05:00:00 GMT',
           'last-modified': 'Wed, 26 Mar 2014 06:50:53 +0000',
           'cache-control': 'no-cache, must-revalidate, post-check=0, pre-check=0',
           etag: '"1395816653"',
           vary: 'Accept-Encoding',
           'content-length': '0',
           'keep-alive': 'timeout=5, max=100',
           'connection: 'Keep-Alive',
           'content-type': 'text/html' 
        },
        data: null 
    }

當我嘗試在服務器上進行同步調用時,客戶端出現“內部服務器錯誤”。 在服務器控制台上,出現以下錯誤。

Exception while invoking method 'get_list' Error: failed [406]
    at Object.Future.wait (/root/.meteor/tools/bebd881297/lib/node_modules/fibers/future.js:326:15)
    at Object.call (packages/meteor/helpers.js:111)
        at Object.HTTP.get (packages/http/httpcall_common.js:73)
    at Meteor.methods.get_prop_list (app/server/main.js:567:36)
    at maybeAuditArgumentChecks (packages/livedata/livedata_server.js:1346)
    at packages/livedata/livedata_server.js:539
    at _.extend.withValue (packages/meteor/dynamics_nodejs.js:35)
    at packages/livedata/livedata_server.js:538
    at _.extend.withValue (packages/meteor/dynamics_nodejs.js:35)
    at _.extend.protocol_handlers.method (packages/livedata/livedata_server.js:537)
         - - - - -
    at makeErrorByStatus (packages/http/httpcall_common.js:12)
    at Request._callback (packages/http/httpcall_server.js:99)
    at Request.self.callback (/root/.meteor/tools/bebd881297/lib/node_modules/request/request.js:129:22)
    at Request.EventEmitter.emit (events.js:98:17)
    at Request.<anonymous> (/root/.meteor/tools/bebd881297/lib/node_modules/request/request.js:873:14)
    at Request.EventEmitter.emit (events.js:117:20)
    at IncomingMessage.<anonymous> (/root/.meteor/tools/bebd881297/lib/node_modules/request/request.js:824:12)
    at IncomingMessage.EventEmitter.emit (events.js:117:20)
    at _stream_readable.js:920:16
    at process._tickCallback (node.js:415:13)

您收到錯誤406 ,表示Not acceptable 從文檔:

由請求標識的資源僅能夠生成響應實體,該響應實體具有根據請求中發送的接受標頭不可接受的內容特征。

這表明您正在請求數據的第三方服務器對您在get_list函數中構造的url感到不滿意,或者您缺少請求所需的一些標頭。

如果不了解服務器及其要求,則很難進行調試。

暫無
暫無

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

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