1
Gnome-shell extension에서 작업 중이며 Soup를 사용하여 서버에 접속하고 있습니다. 기본적으로 인증 후 수행 할 수있는 POST 요청을 보내려고합니다. 인증 된 경우 JSON 컨텐트가 응답하고 응답하지 않으면 응답 내용이 HTML 인 사이트의 시작 페이지입니다. 여기에 지금까지 내 코드입니다 :Soup - 인증을 통한 POST 요청
let session = new Soup.SessionSync();
session.user_agent = Me.metadata.uuid;
let authParams = {'login': 'xxx', 'password': 'xxx'};
let message = Soup.form_request_new_from_hash('POST', authURL, authParams);
session.queue_message(message, Lang.bind(this, function(session, response) {
global.log('AUTHENTICATE: ' + response.status_code + ' - ' + response.reason_phrase);
global.log('AUTHENTICATE: ' + response.response_body.data);
let msg = Soup.form_request_new_from_hash('POST', url, params);
session.queue_message(msg, Lang.bind(this, function(session, response) {
\t global.log(response.status_code + ' - ' + response.reason_phrase);
\t global.log(response.response_headers.get_one('content-type'));
}));
}));
내가 응답에 따라 인증 요청이 잘 작동하는지 볼 수는 있지만, 두 번째 요청은 나에게 HTML 콘텐츠를 반환합니다. 이 두 가지 요청을 보내서 SoapUI를 체크인했는데 "HTTP 세션 유지 관리"옵션을 설정하면 제대로 작동합니다 (일부 JSON 콘텐츠가 있음).
따라서 두 번째 요청을 보낼 때 session
에 인증이 저장되지 않는다고 생각합니다. 내 세션에서 인증을 저장하려면 여기에서 빠진 내용을 알고 있습니까?
감사합니다.