像uploadforxml之類的,呼叫方法,用初始化環境嗎
uj5u.com熱心網友回復:
我這里有個例子,是根據圖書的ISBN查詢圖書資訊的。uj5u.com熱心網友回復:
//f_get_json_isbn//https://api.douban.com/v2/book/isbn/9787543632608
//https://api.douban.com/v2/book/isbn/7543632608
long ll_pos
ll_pos=pos(as_isbn,'-')
do while ll_pos>0
as_isbn=left(as_isbn,ll_pos - 1)+mid(as_isbn,ll_pos + 1)
ll_pos=pos(as_isbn,'-')
loop
Blob lblb_args
String ls_headers
String ls_url
Long ll_length,ll_rest
ls_url="https://api.douban.com/v2/book/isbn/"+as_isbn
String ls_data,ls_response
OleObject lole_tenyear //宣告ole
lole_tenyear = CREATE oleobject
lole_tenyear.ConnectToNewObject("Microsoft.XMLHttp") //幫頂XMLhttp組件,我測過xp和win7都自帶,不需安裝任何輔助軟體如.net環境
lole_tenyear.open ("POST",ls_url, false) //引數解釋請看:
//http://blog.csdn.net/ldl22847/article/details/9662927
lole_tenyear.setRequestHeader ("Content-type", "application/x-www-form-urlencoded")
lole_tenyear.setRequestHeader('Content-Length',string(len(ls_data)))
//lole_tenyear.send (' ')
lole_tenyear.send (ls_data) //關鍵是這一步:如果你的https的環境沒有安裝瀏覽器的認證的根證書,一定會報錯退出,如果你申請安裝了verisign等權威機構發的根證書,用ie打開上面的https,就不會報紅色警告(問你是不是繼續)。但pb不會提示你是不是繼續,直接報錯退出。verisign的證書一年好像要1萬-10萬元的服務費。在這里你如果想測驗一下,你可以把上面的https地址換成https://www.alipay.com/ (支付寶的),不會報錯的。注意:這里的證書及驗證都是單向驗證,不是雙向的。
do While lole_tenyear.readyState <> 4 // ' 查詢狀態,延時
yield()
Loop
ls_response = lole_tenyear.responseText //回傳結果
//messagebox(ls_url,ls_response)
IF lole_tenyear.Status >= 300 THEN
// MessageBox ("HTTP request failed:", lole_tenyear.StatusText ,Exclamation!,OK!)
END IF
destroy lole_tenyear
return ls_response
uj5u.com熱心網友回復:
ole 呼叫webservice 很多介面方式都不支持,還是利用http去請求webservice轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/14766.html
標籤:Web 應用
