濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > HTTP請(qǐng)求返回415錯(cuò)誤碼定位解決方法

HTTP請(qǐng)求返回415錯(cuò)誤碼定位解決方法

熱門標(biāo)簽:怎么去掉地圖標(biāo)注文字 高德地圖標(biāo)注公司位置需要錢嗎 合肥阿里辦理400電話號(hào) 廊坊地圖標(biāo)注申請(qǐng)入口 北京外呼系統(tǒng)咨詢電話 海南人工外呼系統(tǒng)哪家好 慶陽(yáng)外呼系統(tǒng)定制開發(fā) 襄陽(yáng)外呼增值業(yè)務(wù)線路解決方案 地圖標(biāo)注資源分享注冊(cè)

今天在工作中,發(fā)現(xiàn)我再調(diào)用外部API接口的時(shí)候,發(fā)現(xiàn)一個(gè)奇怪的問(wèn)題,就是我Eclipse中寫代碼調(diào)用外部API接口時(shí)返回HTTP狀態(tài)碼是415,但是我將相同的報(bào)文放在HttpRequester里面請(qǐng)求的時(shí)候卻又可以拿到正常返回結(jié)果,而不是415錯(cuò)誤。

不知道有沒(méi)有人跟我一樣遇到過(guò)這個(gè)問(wèn)題,這里記錄一下解決辦法。

首先我們還是看下HTTP的狀態(tài)碼關(guān)于415返回碼的說(shuō)明吧。

415 Unsupported Media Type 服務(wù)器無(wú)法處理請(qǐng)求附帶的媒體格式

乍看之下,當(dāng)時(shí)并沒(méi)有看出來(lái)是什么意思,后來(lái)通過(guò)度娘搜索了下,覺(jué)得應(yīng)該是跟發(fā)送HTTP報(bào)文的請(qǐng)求頭中的Content-Type有關(guān)。于是,我嘗試了下,在Eclipse中的Java代碼中,在發(fā)送Http請(qǐng)求時(shí)帶上了相應(yīng)的頭字段,如下所示:

public class Test {
 public static void main(String[] args) throws IOException {
 String url = "http://ip:port/cip-cas/search";
 String sendData = "{\"appId\":\"***\",\"contentName\":\"人民的名義\",\"equipmentId\":\"***\",\"requestSeq\":\"***\",\"requestType\":\"1\",\"userId\":\"***\"}";
 StringBuilder resultBuilder = new StringBuilder();
 MapString,String> headers = new HashMapString,String>();
 headers.put("Content-Type", "application/json; charset=utf-8");
 UrlConnectionHelper.post(url, sendData, "UTF-8", 8000, headers, resultBuilder);
 System.out.println(resultBuilder.toString());
 }
}

通過(guò)執(zhí)行測(cè)試,發(fā)現(xiàn)問(wèn)題真的解決了。但是為什么我在HttpRequester中沒(méi)有自己設(shè)置頭字段卻可以正常拿到返回報(bào)文,為了解決這個(gè)疑問(wèn),我決定對(duì)HttpRequester發(fā)送出去的報(bào)文進(jìn)行抓包分析,下面是抓包的結(jié)果。

這時(shí)候才發(fā)現(xiàn)原來(lái)根本原因在這呢,應(yīng)該是HttpRequester在發(fā)送請(qǐng)求的時(shí)候幫我們自己去做了一些處理,如果發(fā)送的是json數(shù)據(jù)自動(dòng)幫我們加上了Content-Type字段的聲明,從而能夠正常返回結(jié)果。而在Java代碼發(fā)送的時(shí)候,通過(guò)抓包我們發(fā)現(xiàn)是沒(méi)有這個(gè)頭字段的(當(dāng)然沒(méi)有,因?yàn)槲覀儔焊鶝](méi)有給他設(shè)置這個(gè)頭字段)。

至此,關(guān)于這個(gè)問(wèn)題算是解決了,但是回過(guò)頭來(lái)想,415又是什么意思呢?

個(gè)人覺(jué)得應(yīng)該是我們嘗試發(fā)送的數(shù)據(jù)是一定數(shù)據(jù)格式的,比如json,比如xml等等,這時(shí)候需要告訴處理方我們發(fā)送的是什么樣的數(shù)據(jù),如果沒(méi)有告訴的話接收方可能就直接拒識(shí)了,這時(shí)候我們只要根據(jù)實(shí)際情況給數(shù)據(jù)接收方提供發(fā)送報(bào)文的數(shù)據(jù)格式應(yīng)該就可以了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • http post 415錯(cuò)誤的解決方法
  • SpringMVC 中HttpMessageConverter簡(jiǎn)介和Http請(qǐng)求415 的問(wèn)題
  • HTTP 415錯(cuò)誤-Unsupported media type詳解

標(biāo)簽:鶴崗 株洲 商丘 哈密 臺(tái)州 鎮(zhèn)江 平頂山 綿陽(yáng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《HTTP請(qǐng)求返回415錯(cuò)誤碼定位解決方法》,本文關(guān)鍵詞  HTTP,請(qǐng)求,返回,415,錯(cuò),誤碼,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《HTTP請(qǐng)求返回415錯(cuò)誤碼定位解決方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于HTTP請(qǐng)求返回415錯(cuò)誤碼定位解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    平远县| 宁强县| 隆德县| 嘉义市| 冕宁县| 临澧县| 会同县| 凯里市| 佛学| 防城港市| 赫章县| 黎城县| 西宁市| 嫩江县| 当阳市| 望都县| 惠东县| 从江县| 高安市| 保德县| 萝北县| 闽侯县| 密山市| 凭祥市| 彭阳县| 和田县| 栾川县| 呈贡县| 三穗县| 周至县| 南汇区| 高阳县| 格尔木市| 阿图什市| 黄冈市| 大埔区| 乐昌市| 滦南县| 遂昌县| 大渡口区| 依兰县|