HttpRequest设置表单内容类型无效
@Test
public void getImgCode() {
Map<String, Object> param = new HashMap<>();
param.put("userId", "11111");
HttpRequest request = HttpRequest.post(baseUrl + "openapi/api/v2/getCode")
.header("content-type","application/json;charset=utf-8")
.form(param);
System.out.println(request.contentType());
HttpResponse response = request.send();
System.out.println(response.bodyText());
}
但是打印content-type=application/x-www-form-urlencoded;charset=UTF-8
如果使用httpqequest.query(param)
,那么没有问题,但是查询只支持字符串。
简短回答:如果使用form()
,则不能更改请求的内容类型和内容长度。它是一种在主体中发送多部分编码或URL编码的参数的特殊方法。这只是HTTP:)的规范,通过更改内容类型,服务器将得到不正确的请求:它需要json主体,而不是表单参数。
您可以通过两种方式解决此问题:
bodytext()
并使用application/JSON
content-type;或表单
。如果您能解释为什么在此请求中不涉及JSON时需要将content-type的默认值更改为JSON,这将会很有帮助?
我设置header的方式如下: 它为一些服务工作,但我在添加自定义头的需求基础,我面临的问题。 我不能使用“.contenttype()”在请求中设置header,因为headersmap中动态设置的header的数量是可变的。
我无法在HttpClient上设置内容类型。我接着问了一个问题:如何为HttpClient请求设置Content-Type头?但还是没有运气。 所以我怎么能强迫它,这样它就真的添加了它呢?提前道谢。
我正在做一个项目,在这个项目上,我的API使用了REST服务。如果我在类的主函数中使用REST服务,它工作得很好。但当我从使用Quarkus resteasy的servlet调用它时,它抛出异常。例外情况如下。 servlet的主要代码如下所示。 该项目的依赖性如下。 奇怪的是,类的主函数中的相同代码可以很好地运行。这个问题困扰了我一天,如果你能帮助我,我将不胜感激。
我一直试图仅使用文件内容检测MIME类型,使用Apache Tika Core和Apache Tika Parser1.23 jars。下面是用于相同内容的代码: Tika无法检测扩展名为。tmp(text/plain file)和iso-8859-1字符集的文件的内容类型,内容如下: èé 通过以下方式正确检测具有相同配置和以下内容的文件: 000000000000000000000000000
当我将RequestHeader设置为Content-type=“application/json”时,它将变为“application/x-www-form-urlencoded”,并且我得到了不支持的媒体类型错误(无效的内容类型:application/x-www form-urlencoded) 我的RestController代码: 我的javascript函数:
我有一个的值为 我想返回 的数据帧 我最初试图将数据帧转换成数据集并映射数据集。但是,我无法用MurmurHash3重现散列。总之我是无法再现https://github . com/Apache/spark/blob/master/SQL/core/src/main/Scala/org/Apache/spark/SQL/functions . Scala # l 2165-l 2168。 对如何