1. 程式人生 > >請求WebService出現"因 URL 意外地以 結束,請求格式無法識別"解決方法

請求WebService出現"因 URL 意外地以 結束,請求格式無法識別"解決方法

最近在擺弄jeasyui,這玩意兒用著方便,稱手,但太方便了,就少了一點靈活。

在用jeasyui中DataGrid請求WebService(asmx檔案)時,莫名的出現沒資料,具體表現為:

    本地開發除錯,能正常請求到伺服器資料;

    釋出到IIS上後,客戶端電腦訪問,就請求不到資料了;

   在伺服器上作本地訪問,又能請求到資料;(是不是有點意思了。)

用jQuery的ajax請求WebService(asmx檔案)時,一直正常。

開發環境:Windows XP 下的VS2008

js框架:jquery-1.7.2.min.js

               jquery.easyui.min.js

用Firebug看-------------因 URL 意外地以“/xxxxxxxxxx”結束,請求格式無法識別。

谷老師說:

要在webservice的 <system.web> 節點下加入

<webServices> 
<protocols> 
<add name= "HttpPost
" /> 
<add name= "HttpGet " /> 
</protocols> 
</webServices>
   
 
          

把二者請求和返回過程用Firebug看一下,得到的東西對比一下,

Easyui Datagrid請求:
    Headers:
        ResponseHeaders:
        //手動在伺服器端設定Context.Response.ContentType = "application/json; charset=utf-8";
        //如果不設定,則沒有下面的Content-Type
        Server    ASP.NET Development Server/9.0.0.0
        Content-Typeapplication/json; charset=utf-8




        RequestHeaders:
        Content-Typeapplication/x-www-form-urlencoded; charset=UTF-8   //application/x-www-form-urlencoded(使用HTTP的POST方法提交的表單)
        Acceptapplication/json, text/javascript, */*; q=0.01
        X-Requested-WithXMLHttpRequest


    Post:
        Parameters:   application/x-www-form-urlencoded
        invs_id1041  //這是引數,


        JSON:  //JSON沒有資料,


        Source:
        invs_id=1041 //注意格式
-----------------------------------------------------------------------------------------------------


jQuery ajax請求:


    Headers:
        ResponseHeaders:
        ServerMicrosoft-IIS/6.0
        ResponseHeaders: Content-Typeapplication/json; charset=utf-8

        Acceptapplication/json, text/javascript, */*; q=0.01
        X-Requested-WithXMLHttpRequest


    Post:
                        //Parameters引數
        JSON           //JSON有資料
        invsId  1041  //這是引數


        Source
        {invsId:1041}  //注意格式

Easyui的請求(實際底層是jQuery的ajax請求),如果不設定Content-Type,預設會加上application/x-www-form-urlencoded;

出現:因 URL 意外地以“/xxxxxxxxxx”結束,請求格式無法識別。原因肯定是Content-Type為application/x-www-form-urlencoded引起的;

但為什麼本機訪問可以請求到資料,客戶端電腦訪問伺服器就不行了呢?(。。。。。。)

相關推薦

請求WebService出現" URL 意外 結束,請求格式無法識別"解決方法

最近在擺弄jeasyui,這玩意兒用著方便,稱手,但太方便了,就少了一點靈活。 在用jeasyui中DataGrid請求WebService(asmx檔案)時,莫名的出現沒資料,具體表現為:     本地開發除錯,能正常請求到伺服器資料;     釋出到IIS上後,客戶端電

.asmx支持post請求或者get請求調用(WebService " URL 意外 結束請求格式無法識別" 的解決方法)

處的 ron pro style handler lin -s silver 沒有 使用Post調用以asmx形式提供的webservice時,在本機調試沒有調用問題。一旦部署至服務器後會提示如下信息: <html> <head>

Win10首次啟動出現計算機意外重啟或遇到錯誤的解決方法

windows 計算機 Win10系統 安裝完後首次開機時系統彈出窗口,提示:計算機意外重新啟動或遇到錯誤,導致系統安裝無法繼續。這是怎麽回事,下面讓小編來講解這個問題的解決方法吧。  故障分析:  首次啟動Win10系統時提示:計算機意外地重新啟動或遇到錯誤。Windows 安裝無法繼續。若要安裝W

HttpURLConnection 請求webservice出現錯誤

出現錯誤: 伺服器報錯500 返回資訊:no SOAPAction header! <?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas

java使用axis呼叫webservice出現Connection reset by peer: socket write error的一種解決方法

call.addParameter( new QName(nameSpace,"excelContent"), org.apache.axis.encoding.XMLType.SOAP_BASE64BINARY, javax.xml.rpc.ParameterMode.I

mac上 go-delve 安裝出現The specified item could not be found in the keychain 解決方法

mon pen 方法 rar spec hub 錯誤 sys lib 安裝go語言的編譯環境,在安裝到 delve時候出現如下錯誤: If reporting this issue please do so at (not Homebrew/brew or Hom

Ubuntu&Linux系統出現文件系統只讀Read-only file system 的快速解決方法

nbsp 分區信息 -o 錯誤 info eboot strong bsp ron 問題描述: 周末運行盤平臺服務程序,周一來操作系統卡頓,主進程已退出,重啟進程時提示Read-only file system;新建目錄和其他chmod -R等等操作都提示Read-only

安裝loadrunner時出現”命令行選項語法錯誤鍵入命令 ?獲得幫助“的解決方法

完美解決 獲取 AR yun div 運行 信息 tps 選項 安裝LR11 時,安裝Microsoft Visual c++2005 sp1運行時組件,就會提示命令行選項語法錯誤,鍵入“命令/?”可獲取幫肋信息1、進入loadrunner-11\Additional C

關於ajax請求資料,並將資料賦值給全域性變數的一些解決方法

在使用ajax請求資料是,開始的時候是打算將ajax的資料取出,並賦予給全域性變數,但是在實際編碼過程中發現並不能將資料賦予給最開始定義的全域性變數,出現這個問題的原因是由於ajax非同步載入的原因,所以只能用其他方法來解決,下來是解決的方法 第一個解決方法沒有使用全域性變數,直接在ajax請求中將請求到的

phpcms 更換新域名更新欄目url和內容頁url無法更新解決方法

更換域名後更新欄目url和內容頁url還是無法更新為新的域名,手動把cache資料夾下能清除的快取檔案清除了還是不行,把資料庫的快取表內容清空了還是不行,問題在於欄目快取並沒有清除。 解決辦法: (1)、找到檔案:/caches/configs/system.php裡面所有和域名有關的

QNX 無法root賬戶 ssh登入的解決方法

因為root 沒有開啟許可權 開啟ssh服務 vi /etc/ssh/sshd_config   修改檔案內容,更改#PermitRootLogin no為PermitRootLogin yes. 然後依次執行 slay sshd ssh-ke

安裝redis出現cc adlist.o /bin/sh:1:cc:not found的解決方法

安裝redis時 提示執行make命令時提示 CC adlist.o /bin/sh: cc: 未找到命令   問題原因:這是由於系統沒有安裝gcc環境,因此在進行編譯時才會出現上面提示,當安裝好gcc後再進行編譯時,上面錯誤提示將消失。   解決方法:

Hibernate出現No default constructor for entity: : com.demo.dataobject.ProductInfo的解決方法

【問題】 在做junit測試的時候,為了方便,給object加上了帶參的建構函式,於是出現了報錯: org.springframework.orm.jpa.JpaSystemException: No default constructor for entity:  : com.d

出現錯誤lambda expressions are not supported at language level 7解決方法

前言 今天在工程中使用lambda表示式時,AS報錯:lambda expressions are not supported at language level 7。下面就簡單說一下解決方法。 環境 Mac Mojave AndroidStudio 3.2.1 JAVA 1

出現身份驗證錯誤 要求的函式不受支援問題解決方法

windows版本10.0.17134,安裝最新補丁後無法遠端windows server 2008、2013、2016伺服器 報錯資訊如下:出現身份驗證錯誤,要求的函式不受支援  可能是由於CredSSP加密Oracle修正。 微軟給出解決方案: https://su

WIN10遠端連線WIN7時出現“這可能是由於CredSSP 加密Oracle修正”錯誤的解決方法

問題描述: 1、WIN10已經升級到最新,WIN7剛安裝。 2、CPU時I7 8700K。 參考文章: 《mstsc遠端報:這可能是由於CredSSP 加密Oracle修正的兩種完美解決方法》 《win7 關閉“不支援的硬體”提示,並繼續接受更新的方法》

php 出現Warning A non numeric value encountered問題的原因及解決方法

                     本文介紹php出現Warning: A non-numeric value encountered問題,用例項分析出現這種錯誤的原因,並提供避免及解決問題的方法。 <?phperror_reporting(E_ALL);ini_set('display_erro

eclipse匯入java web專案,專案出現紅叉而其他地方沒有紅叉的問題解決方法

eclipse匯入別人的Java web專案時會出現這種情況:僅專案名出現紅叉而其他地方沒有紅叉的問題。這可能是以下幾種情況導致的,其解決方法如下: 1.匯入專案之前,請確認工作空間編碼已設定為utf-8:window->Preferences->Gen

關於 vs 2013出現“在VS2013開啟之前的專案,提示無法載入解決方案中的專案,導致專案無法開啟”的問題解決辦法

關於 vs 2013出現“在VS2013開啟之前的專案,提示無法載入解決方案中的專案,導致專案無法開啟”的問題解決辦法 -前段時間在電腦上安裝了sql server2008 r2,之後因為沒安裝成功又根據網上的辦法對sql server r2進行了完全解除安裝和刪除,反反覆覆好幾次。 有

import matplolib 時出現"This probably means that tk wasn't installed properly."的解決方法

最近又添了一臺新電腦,配置好各個依賴環境後想用matplotlib畫個圖,結果報出下面的錯誤 根據報錯分析,應該是C:/Python27/tcl/tk8.5/tk.tcl這個檔案出問題了,根據圖中的資訊,準確定位到應該是第二十行出現了問題。 開啟看看 把8.5.0改成8.5.2就解決問題了