• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            tbwshc

            tbw

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              95 Posts :: 8 Stories :: 3 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(4)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            PB9.0 通過http協議以POST方式將XML發送到協議服務器
            最近接觸了銀企互聯系統,現在需要將生成的xml發送至服務器。
            我查看了pb的幫助文件,posturl可以實現該功能,但是pb提供的例子我有點看不懂,
            哪位大俠幫忙解釋解釋。最好有個實例對照。

            servicereference.PostURL ( urlname, urldata, headers, {serverport, } data )

            Argument Description
            servicereference Reference to the Internet service instance.
            urlname String specifying the URL to post.
            urldata Blob specifying arguments to the URL specified by urlname.
            headers String specifying HTML headers. In Netscape, a newline (~n) is required after 
              each HTTP header and a final newline after all headers.
            serverport (optional) Specifies the server port number for the request. The default value 
              for this argument is 0, which means that the port number is determined by the system 
              (port 80 for HTTP requests).
            data InternetResult instance into which the function returns HTML.

            主要問題提就是那個headers是干嘛用的,data又是怎么回事?


            工行的開發手冊是這么說的
            企業按照工行提供的xml包格式進行打包,在局域網內通過http協議以POST方式將交易包發送到NetSafe Client的安全http協議服務器。
            http請求格式:action=”http://客戶端NetSafe Client的地址和加密端口號/servlet/ICBCCMPAPIReqServlet?userID=證書ID&PackageID=包序列ID &SendTime=請求時間” 
            請求數據格式(post方式):Version=版本號(區分版本時間,暫定0.0.0.1) &TransCode=交易代碼(區分交易類型,每個交易固定)&BankCode=客戶的歸屬單位&GroupCIS=客戶的歸屬編碼&ID=客戶的證書ID(無證書客戶可空)&PackageID=客戶的指令包序列號(由客戶ERP系統產生,不可重復)&Cert=客戶的證書公鑰信息(進行BASE64編碼;NC客戶送空) &reqData=客戶的xml請求數據

            藍字標出的部分應該是放到posturl參數的那一部分?


            ------解決方案--------------------------------------------------------
            用這種方式來發送數據

            OLEObject dom, http
            String Http_Name,result
              
            Http_Name = "http://... "
              
            dom = CREATE OLEObject
            http = CREATE OLEObject
            //messagebox調試看是否成功
            messagebox( 'http ',http.ConnectToNewObject( "Msxml2.XMLHTTP "))
            messagebox( 'dom ',dom.ConnectToNewObject( "Msxml2.DOMDocument "))
              
            dom.Load( "c:\xxx.xml ")
            http.Open( "POST ", Http_Name, TRUE)
            http.Send(dom.xml)
            do While http.readyState <> 4 // ' 查詢狀態,延時
            yield()
            Loop
              
            result = http.responseText //這個測試用! 你可不寫
            messagebox( 'resul------解決方案--------------------------------------------------------
            Blob lblb_args
            String ls_header
            String ls_url
            String ls_args
            long ll_length
            integer li_rc

            inet iinet_base,iinet
            //internetresult ir
             iinet_base = create inet
             iinet = create inet

            li_rc = GetContextService( "Internet", iinet_base )

            IF li_rc = 1 THEN

            ir = CREATE n_cst_internet

            ls_url = "http://xxx.com/getinfo.asp?"

            ls_args = "var1=tr&var2=tttt&var3=&var4=r&var5=&var6=&var7=tttt&var8=&var9=&var10=ttt&var11="

            lblb_args = Blob( ls_args )

            ll_length = Len( lblb_args )

            ls_header = "Content-Type: " + &
            "application/x-www-form-urlencoded~n" + &
            "Content-Length: " + String( ll_length ) + "~n~n"

            li_rc = iinet.PostURL( ls_url, lblb_args, ls_header, ir )

            messagebox('',string(li_rc))

            END IF

            integer li_filenum
            li_filenum = fileopen('c:\1.html',textmode!,write!,shared!,replace!,encodingUTF8!)
            filewriteex(li_filenum,ir.is_data)
            fileclose(li_filenum)


            ole_1.object.navigate('c:\1.html')

            destroy iinet_base
            destroy iinet
            destroy ir



            ir 建個internetresult的standard class n_interresult作為接收返回值
            久久天天躁狠狠躁夜夜avapp| 国内精品伊人久久久久777| 精品久久香蕉国产线看观看亚洲| 97超级碰碰碰久久久久| 久久WWW免费人成—看片| 思思久久99热只有频精品66| 久久综合狠狠综合久久| 久久香蕉一级毛片| 一本色道久久综合亚洲精品| 国产精品无码久久四虎| 亚洲精品无码久久久久去q| 国产精品日韩欧美久久综合| 亚洲精品乱码久久久久久自慰| 国产精品无码久久综合网| 久久精品国产99久久久| 99久久精品免费看国产一区二区三区| 国产精品9999久久久久| 女人高潮久久久叫人喷水| 国产A级毛片久久久精品毛片| 久久久久亚洲精品无码蜜桃| 一级做a爰片久久毛片毛片| 国产69精品久久久久9999| 国产一级做a爰片久久毛片| 亚洲国产精品成人久久| 99久久香蕉国产线看观香| 久久久久香蕉视频| 久久97久久97精品免视看| 亚洲国产精品久久久久网站| 久久精品欧美日韩精品| 久久久久久九九99精品| 久久精品国产99久久无毒不卡| 亚洲精品无码久久久久| 性欧美大战久久久久久久久 | 亚洲国产欧洲综合997久久| 亚洲国产成人精品91久久久| 国内精品久久久久影院网站| 久久se精品一区二区影院 | 精品久久人人妻人人做精品| 一本久久a久久精品综合夜夜| 久久不射电影网| 久久激情亚洲精品无码?V|