有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java OkHttp Post媒体类型解析

我试图在OkHttpPOST请求的正文中发送一行员工id的文本,模拟使用浏览器检查看到的请求

该请求是URL参数和帖子正文中单个员工ID字符串的混合,即ABC123

当前,在登录并发送请求后,服务器响应为500

        Request quickFind = new Request.Builder()
            .url(quickFIndUrl)
            .addHeader("csrf_tok", csrfToken)
            .addHeader("x-rest-api", "true")
            .addHeader("x-requested-with", "true")
            .addHeader("accept-encoding", "gzip, deflate, br")
            .addHeader("user-agent", "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Mobile Safari/537.36")
            .addHeader("accept", "application/json, text/plain, */*")
            .addHeader("origin", "https://contoso.com")
            .addHeader("content-type", "application/json;charset=UTF-8")
            .post(RequestBody.create(MediaType.parse("text/x-markdown"), postBody))
            .build();

.post(RequestBody.create(MediaType.parse("text/x-markdown"), postBody)做了什么,因为我认为这可能是服务器响应500的原因

从表面上看,它似乎设置了MIME type,但是MIME类型与上面的content-type有什么不同呢

除了text/x-markdown之外,还可以解析哪些有效类型


共 (1) 个答案

  1. # 1 楼答案

    请求正文上的内容类型将作为Content-Type头传输

    您应该删除内容类型标题;这是多余的

    选择最能描述请求正文的内容类型