2015-01-05 28 views
0

我使用快速請求與API進行通信;一些控制器文件使用導出,所以我可以保持路徑文件漂亮。Express.js和請求:標題意外地重置自己

module.exports = function(app){ 

    var moment = require('moment'), 
     request = require('request'), 
     auth = require('../auth/auth.js')(app), 
     apiUrl = process.env.API_URL; 

    return { 

    addProduct: function addProduct(req,res) ... 

request.defaults在auth文件中設置,login調用一個函數來設置頭文件以在整個應用程序中對用戶進行身份驗證。

auth.setToken = function(token, type, access) { 
    auth.request = request.defaults({ 
    headers: { 
     'x-access-token': token, 
     'x-access-type': type, 
     'x-access-level': access, 
    } 
    }); 
}; 

然後使用一些mods的請求。

auth.request.get(apiPath, function(err, apiRes) { 
    res.render(renderView, { 
    items: items, 
    }); 
}); 

一切從「用戶」文件中的每一個功能的偉大工程,但我有一對夫婦的我只是說在其他控制器中的文件,以及由於某種原因,頭部得到復位(所以我的身份驗證丟失)這些文件。我可以從字面上將'用戶'文件複製並粘貼到其他文件中,並且遇到同樣的問題,或者我可以將其他文件中的內容放回到'用戶'文件中,並且再次正常工作。我無法弄清楚我做錯了什麼,但如果我只有一個文件,這將會非常混亂......任何想法?

回答

0

想象一下,這是一個變量沒有在控制器文件中按照我所認爲的那樣傳遞的問題,所以我創建了一個新的函數來將令牌從會話中複製回頭文件並解析。