javascript - xhr.getAllResponseHeader 返回源代码

标签 javascript ajax http typescript xmlhttprequest

var _this = this;
$(document).ready(() => {
  $("#loginForm").submit(function (event) {

    // Standard-Aktion abbrechen
    event.preventDefault();

    // Formular per AJAX senden
    var form = $(this);
    $.ajax({
      type: 'POST',
      url: form.prop('action'),
      data: form.serialize(),
      success: (output, status, xhr) => {

        if (output.match(someString) === null) {
          console.log(xhr.getAllResponseHeaders);
          var header = xhr.getResponseHeader('Set-Cookie');
          console.log(header);
          //loggin erfolgreich
          _this.navCtrl.setRoot("HomePage");
        } else {
                  .
                  .
                  .

大家好,

我正在尝试打印我的响应 header 。 在示例中,我查找特定 header ,但它返回 null。 如果我使用 .getAllResponseHeaders,它会打印源代码而不是值:

ƒ () {
                return completed ? responseHeadersString : null;
            }

最佳答案

调用方法时,不要忘记():

console.log(xhr.getAllResponseHeaders());

但是,根本问题是您需要此行的更多权限:

var header = xhr.getResponseHeader('Set-Cookie');

您只能访问 JavaScript 中的简单 header ,除非您的服务器允许公开它们,例如:

Access-Control-Expose-Headers: Set-Cookie

因此,您需要添加此服务器端以允许您的 JavaScript 访问 header 。

关于javascript - xhr.getAllResponseHeader 返回源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47388614/

相关文章:

javascript - Jquery 中的 Div 位置

javascript - 减少函数插入数组值

javascript - 在 addthis 分享栏上动态更改 URL 适用于除分享计数之外的所有内容

jquery - 使用 jQ 和 Ajax 将一个简单的变量传递给 Ruby

multithreading - 当客户端是多线程时,客户端对 HTTP 429 的正确 react 是什么?

javascript - jQuery UI Datepicker beforeShowDay 函数未运行

javascript - JSON字符串删除字符

php - 从 Text-Area 中删除空白,为什么它在那里?

javascript - 如何在同一端口上运行 couchdb 和 superlogin?

http - zf2 骨架应用程序,将所有内容转换为 https