带密钥的Ajax头身份验证

Ajax header authentication with key

本文关键字:身份验证 Ajax 密钥      更新时间:2023-09-26

我正在尝试向URL发送ajax请求并接收xml内容。

问题是:在访问内容之前必须发送一个验证密钥。

errormessage说:

选项https://example.com/xxx?agency& = xxx&到达= xxx&离开= xxx&公司= xxx& salesmarket = xxx&成人= xxx

XMLHttpRequest无法加载https://example.com/xxx?agency&=xxx&arrival=xxx&departure=xxx&company=xxx&salesmarket=xxx&adults=xxx预飞行响应的http状态码401无效

$.ajax
    ({
      type: "GET",
      url: "https://example.com/xxx",
      contentType: 'text/xml',
      headers: {
        "Authorization": "key xxxxxxx"
      },
        data: {agency: 'xxx', arrival: 'xxx', departure:'xxx',company:'xxx',salesmarket:'xxx',adults:'xxx'},
      success: function (response){
        console.log(response);
      }
    });

我有一些代码写在ASP的工作,但我更愿意得到与ajax请求的信息。

      set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
      xmlhttp.Open "GET","https://example.com/xxx?agency&=xxx&arrival=xxx&departure=xxx&company=xxx&salesmarket=xxx&adults=xxx"
      xmlhttp.setRequestHeader "Content-Type", "text/xml"
    xmlhttp.setRequestHeader "key", "xxxxxxx"
    xmlhttp.send DataToSend
    response = xmlhttp.responsexml.xml

谢谢你的帮助

我使用php来获取我需要的信息。

    $url = "https://example.com?agency=xxx&arrival=xxx&departure=xxx&company=xxx&salesmarket=xxx&adults=xxx";
$context = stream_context_create(array(
    'http' => array(
        'header'  => "key: xxxxxxx"
    )
));
$data = file_get_contents($url, false, $context);
$data = simplexml_load_string($data);
print_r($data);