为啥请求中没有发送来自 $http GET 的数据? [复制]

Posted

技术标签:

【中文标题】为啥请求中没有发送来自 $http GET 的数据? [复制]【英文标题】:Why is the data from $http GET is not being sent in the request? [duplicate]为什么请求中没有发送来自 $http GET 的数据? [复制] 【发布时间】:2020-02-11 23:55:47 【问题描述】:

我的 C# 控制器中有一个 GET 方法

public async Task<IHttpActionResult> GetEmailTemplate(List<string> ids)

我在 angularJs 中这样称呼它:

$http(
        method: 'GET',
        url: apiUrl + 'api/jobs/composeEmail',
        data: JSON.stringify(ids) //i also tried ids (which is an array)
);

但是在点击 api 时,id 列表为空......当我在开发人员工具中检查请求时,它没有发送数据......就像 $http 请求中的数据配置被忽略了.我错过了什么?

当我尝试使用 POSTMAN 通过发送 Body

的示例 raw 数据来测试 api 时,请求正在工作
[
 "123213",
 "444444"
]

【问题讨论】:

try to see here 【参考方案1】:

GET 请求中只能使用查询字符串。

REST API: Path vs. Request Body Parameters

$http(
    method: 'GET',
    url: apiUrl + 'api/jobs/composeEmail',
    params: ids: ids
);

【讨论】:

以上是关于为啥请求中没有发送来自 $http GET 的数据? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

浏览器在 ajax 请求上发送 Origin 标头,但不是通过简单的 HTTP Get 请求。为啥?

为啥 Angular 6 不发送 HTTP Get/Post 请求?

如果请求和响应的 uri 相同,为啥 Microsoft Edge 在调用 POST/REDIRECT/GET 方法时发送空的 http-referer?

为啥 axios get 方法请求发送两次?

ab压力测试 http协议中post请求 1000次请求 500并发 为啥请求会增多

如何在 Python 中发送 HTTP Get Web 请求? [复制]