使用请求时未创建护照会话
passport session not created when using request
我正在使用 passportJS 来处理服务器后端的登录和持久会话。
从服务器前端(一个我没有创建的网页,没有足够的知识来处理)传递请求时会话工作正常,但使用请求 (https://www.npmjs.com/package/request) 手动发送时对服务器的请求,会话根本不起作用——没有调用 deserializeUser,req.user 未定义。
这是前端的相关代码。
$.ajax({
type:"POST",
url: GE.SERVER_URL + '/publish',
data: {
name: $( '#new_publication_name' ).val(),
code: column.editor.getValue(),
language: column.mode,
permissions: $( '#new_publication_permissions' ).prop( 'checked' ),
tags: $( '#new_publication_tags' ).val().split(','),
notes: $( '#new_publication_notes' ).val(),
instrument: false,
username: Gibber.Environment.Account.nick
},
dataType:'json'
})
.done( function ( data ) {
if( data.error ) {
GE.Message.post( 'There was an error writing to Gibber\'s database. Error: ' + data.error )
}else{
GE.Message.post( 'Your publication has been saved to: ' + GE.SERVER_URL + '/?path=' + data._id )
}
这是我正在使用的代码。
request.post({url:'http://127.0.0.1:8080/publish',form:{filename:"steinfile", code:"john doe", language:"english",tags:["testfile"],notes:"thesearenotes"}}, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
else
{
console.log(error);
}
})
谢谢!
您不会随 request.post
一起发送 cookie。
会话正常工作需要它们。
我正在使用 passportJS 来处理服务器后端的登录和持久会话。
从服务器前端(一个我没有创建的网页,没有足够的知识来处理)传递请求时会话工作正常,但使用请求 (https://www.npmjs.com/package/request) 手动发送时对服务器的请求,会话根本不起作用——没有调用 deserializeUser,req.user 未定义。
这是前端的相关代码。
$.ajax({
type:"POST",
url: GE.SERVER_URL + '/publish',
data: {
name: $( '#new_publication_name' ).val(),
code: column.editor.getValue(),
language: column.mode,
permissions: $( '#new_publication_permissions' ).prop( 'checked' ),
tags: $( '#new_publication_tags' ).val().split(','),
notes: $( '#new_publication_notes' ).val(),
instrument: false,
username: Gibber.Environment.Account.nick
},
dataType:'json'
})
.done( function ( data ) {
if( data.error ) {
GE.Message.post( 'There was an error writing to Gibber\'s database. Error: ' + data.error )
}else{
GE.Message.post( 'Your publication has been saved to: ' + GE.SERVER_URL + '/?path=' + data._id )
}
这是我正在使用的代码。
request.post({url:'http://127.0.0.1:8080/publish',form:{filename:"steinfile", code:"john doe", language:"english",tags:["testfile"],notes:"thesearenotes"}}, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body);
}
else
{
console.log(error);
}
})
谢谢!
您不会随 request.post
一起发送 cookie。
会话正常工作需要它们。