作者knives ()
看板Ajax
標題[問題] 請問用nodejs搭配restify怎麼用cookie
時間Mon Mar 11 19:46:00 2013
我想透過restify 這個套件,去實作restful
不過我client端用backbone 去呼叫 restful的 服務
我的cookie是用require('cookies'); 去操作
我在nodejs設定了一條路由
server.get('/set', function (req, res) {
setCookies(req, res)
res.json({ status : 'ok'})
});
function setCookies(req, res) {
var cookies = new Cookies(req, res, keys)
cookies
.set('unsigned', 'foo') ;
}
我直接在網址打上
http://localhost:3000/set 直接去呼叫
開firebug去看,的確是有這個cookie
可是我透過我寫的backbone 去呼叫 restful
cookie根本沒有運作
因為我另外用requirejs,所以就寫成這樣
define([
'backbone'
], function(Backbone) {
var User = Backbone.Model.extend({
url: '
http://localhost:3000/set'
});
return User;
});
請問要怎麼改才能順利操作cookie
謝謝回答
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.54.229
1F:→ musie:不考慮用express嗎? 裡面有提供cookiesession的實作 03/11 20:51
3F:→ knives:我有試過 還是一樣阿 03/11 21:17
4F:→ knives:是不是heaer要做什麼宣告呢 03/11 21:18
5F:→ musie:console一下request的header 裡面沒有帶有cookie的資訊嗎? 03/11 21:46
6F:→ knives:怎麼帶阿 03/12 06:39
7F:推 musie:console.log(req.headers.cookie)看看裡面有沒有東西.. 03/12 09:11
8F:推 mrbigmouth:直接打網址時有cookie但backbone呼叫時沒cookie 03/12 10:44
9F:→ mrbigmouth:這就代表你前端有錯 在前段取網址的部份檢查一下吧 03/12 10:44
10F:→ mrbigmouth:話說Model的url怎麼會是set cookie的頁面咧... 03/12 10:46
11F:→ mrbigmouth:而且你應該知道要fetch之後才會真的去那個網址吧 ? 03/12 10:46
12F:→ mrbigmouth:另外...如果你是在document載入後才去呼叫set cookie 03/12 10:47
13F:→ mrbigmouth:的網址寫入...我想你在當頁去讀cookie時還是未設定的狀 03/12 10:48
14F:→ mrbigmouth:態才對? 03/12 10:48