2015-03-19 2 views
1

Я XmlHttpRequest, чтобы сделать http-запрос, и я хочу получить файлы cookie. Код, чтобы получить печенье:Js_of_ocaml - Ошибка при получении cookie

let http_post url = 
    XmlHttpRequest.perform_raw_url 
    ~post_args:[("login", `String (Js.string "foo")); 
       ("password", `String (Js.string "bar"))] 
    url >>= fun r -> 
    let code = r.XmlHttpRequest.code in 
    let msg = r.XmlHttpRequest.content in 
    let cookie = match r.XmlHttpRequest.headers "Set-Cookie" with 
    | None -> "Empty Cookie" 
    | Some s -> s in 
    if code = 0 || code = 200 
    then Lwt.return (msg,cookie) 

let make_test_request id = 
    let button = get_element_by_id id in 
    button##onclick <- (Html.handler (fun _ -> 
     http_post "www.website.com" >>= 
     (fun (msg,cookie) -> 
     Printf.printf "cookie = %s\n" cookie; 
     Html.document##cookie <- Js.string cookie; 
     Printf.printf "s = %s\n" msg; 
     Lwt.return()); 
     Js._true)) 

Куки должны быть в заголовках и я получаю эту ошибку: Отказался, чтобы получить небезопасный заголовок «Set-Cookie»

Это путь, который я «Я получаю файлы cookie неправильно или проблема с моим веб-браузером (я использую хром)?

ответ

1

http://www.w3.org/TR/XMLHttpRequest/#the-getresponseheader()-method

клиент. getResponseHeader (header) Возвращает значение поля заголовка от , ответ которого имя поля совпадает с заголовком, если только поле имя Set-Cookie или Set-Cookie2.

ответы на Why cookies and set-cookie headers can't be set while making xmlhttprequest using setRequestHeader?