如何在javascript中通过XMLHttpRequest的'GET'请求发送数据?

问题描述 投票:0回答:2

感谢您投入时间阅读这篇文章。

我想在 XMLHttpRequest 中发送 GET 请求中的数据。

function useAjax(url,data){
        const xhttp = new XMLHttpRequest();
        xhttp.onload = function(e) {
            const resData = JSON.parse(xhttp.responseText) ;
            setResponseData(true,resData)
        }
        xhttp.open("GET", url, false);
        xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xhttp.send(data);
   }

我尝试更改开放函数参数,例如 xhttp.open("GET", url, [false,data]);

但还是没有结果

javascript ajax get xmlhttprequest
2个回答

0
投票

对于基于 C# 的 API,您可以在方法签名中指定 [FromHeader],然后使用

XMLHttpRequest.setRequestHeader
...

发送标头中的对象
const xhr = new XMLHttpRequest();
xhr.open('GET', 'http://your-host/route/endpoint');
...
xhr.setRequestHeader('MyFilter', {"item":"value", "item":"value" })
xhr.send();

然后在你的控制器(C#)中:

[HttpGet("route/endpoint")]
public async Task<IActionResult> GetListOfMyObject([FromHeader] MyFilter filter)
{
    var result = QueryForDataUsingObject(filter);
    ...
}

对象将自动反序列化为所需类型。

© www.soinside.com 2019 - 2024. All rights reserved.