Java 不支持的内容类型:文本/纯文本;字符集=ISO-8859-1
我有一个Web服务,它必须返回玩家详细信息作为响应。问题是,当我在SoapUI中发送相同的请求时,我会得到有效的响应,但当我通过Java执行此操作时,我会在Java 不支持的内容类型:文本/纯文本;字符集=ISO-8859-1,java,web-services,soap,soapui,Java,Web Services,Soap,Soapui,我有一个Web服务,它必须返回玩家详细信息作为响应。问题是,当我在SoapUI中发送相同的请求时,我会得到有效的响应,但当我通过Java执行此操作时,我会在 不支持的内容类型:文本/普通;字符集=ISO-8859-1 你知道为什么会有问题吗 这是我发出的请求: > <soapenv:Envelope > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:gen=" "> >
不支持的内容类型:文本/普通;字符集=ISO-8859-1
你知道为什么会有问题吗
这是我发出的请求:
> <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:gen=" ">
> <soapenv:Header/>
> <soapenv:Body>
> <gen:GetPlayerDetails>
> <request>
> <systemUID>C_GS01</systemUID>
> <sessionID>TVM0MgAAB9IAAAFEjXyfxbvZ2oU_</sessionID>
> </request>
> </gen:GetPlayerDetails>
> </soapenv:Body>
> </soapenv:Envelope>
您发送的请求可能没有相应的头。您必须使用
Accept
标题声明客户端作为响应接受的数据类型:
Accept: application/xml; application/json;
此外,如果要发送数据,则必须声明所发送内容的内容类型,并且该内容类型应与服务接受的数据兼容
Content-type: application/xml
例如,如果您使用XML发送有效负载。通过Java发送有效负载是什么意思?使用套接字?@helderdarocha我正在使用Http客户端显示该请求之前的Http头。好吧,当我将请求打印到控制台以查看我发送的内容时,我得到的请求与在SOAPUI中发送的请求完全相同。请将您的请求头添加到您的问题中。我指的是Http头。这是最重要的部分。发送到服务器的XML之前的内容。HTTPClient必须生成HTTP头,该头将通知服务器主体中有什么类型的数据。如果正文包含XML,则它必须至少发送
内容类型:application/XML
(如果服务器需要,甚至更具体)。在哪里可以看到HTTP头?尝试使用类似这样的交互式HTTP客户端(它是为REST创建的,但您可以粘贴SOAP XML并将其作为有效负载发送)。您可以尝试添加内容类型
标题,看看它们是如何工作的。
Content-type: application/xml