根據標準檔案中的DEMO.
String
SendUrl="https://nnfpbox.nuonuocs.cn/shop/buyer/allow/cxfKp/cxfServerKpOrderSync.action";
String order="
{\"identity\":\"2329CC5F90EDAA8208F1F3C72A0CE72A713A9D425CD50CDE\",\"order\":{\"buye
rname\":\"浙江愛信諾\",\"taxnum\":\"124511234993295177\",\"phone\":\"0\",\"address\":\"
浙江省杭州市萬塘路
\",\"account\":\"\",\"telephone\":\"0\",\"orderno\":\"nuonuo12345\",\"invoicedate\":\"2018-10
-31 19:16:51\",\"clerk\":\"黃芝\",\"saleaccount\":\"宇宙行
442612010103507108\",\"salephone\":\"0774-7893911\",\"saleaddress\":\"富川瑤族自治縣新
永路 138 號
\",\"saletaxnum\":\"339901999999142\",\"kptype\":\"1\",\"message\":\"\",\"payee\":\"林莉蘇
\",\"checker\":\"林莉蘇
\",\"tsfs\":\"-1\",\"email\":\"[email protected]\",\"qdbz\":\"0\",\"qdxmmc\":\"\",\"dkbz\":\"
0\",\"deptid\":\"\",\"clerkid\":\"\",\"invoiceLine\":\"p\",\"cpybz\":\"\",\"detail\":[{\"goodsname
\":\"蘋果
\",\"num\":\"1\",\"price\":\"1\",\"hsbz\":\"1\",\"taxrate\":\"0.13\",\"spec\":\"\",\"unit\":\"噸
\",\"spbm\":\"10101150101\",\"zsbm\":\"\",\"fphxz\":\"0\",\"yhzcbs\":\"0\",\"zzstsgl\":\"\",\"lsl
bs\":\"\",\"kce\":\"\"}]}}";
不知道用INDY如何傳遞order的請求體。特別是order\":{\"buyername這樣的陣列物件。不知道代碼如何實作。
求高手指教。
uj5u.com熱心網友回復:

這是JSON,不是陣列。
uj5u.com熱心網友回復:
謝謝。不過如何傳遞json,能不能幫忙寫幾行代碼。我找到的用例都是如下所示的這樣的。postStream := TIdMultiPartFormDataStream.Create; // 創建TIdMultiPartFormDataStream類
postStream.AddFormField('textfield', 'd:\temp\test.png');
這種如何寫出諾諾電子發票的order的請求體。
uj5u.com熱心網友回復:
你可以就把他當做一個有規則的字串使用。直接拼接。然后直接發送字串。
uj5u.com熱心網友回復:
我的確也是這樣考慮的。不過,原來的demo中json格式中包括{}這樣的符號也直接放進字串中嗎?不需要另外調整嗎。{'identity':'2329CC5F90EDAA8208F1F3C72A0CE72A713A9D425CD50CDE','order':{'buyername':'浙江愛信
諾','taxnum':'124511234993295177…………。我就是這樣拼的。
請指教,太感謝你了。
uj5u.com熱心網友回復:
用TIdHTTP.Post就可以,需要注意的有兩點,一是他的URL是HTTPS,需要帶上OpenSSL的DLL,網上有很多例子,二是Delphi的string字面值是單引號括起來的,串內有單引號要用連續兩個單引號表示,不過我印象JSON中的單引號換成雙引號也可以uj5u.com熱心網友回復:
不用調整,直接放到字串里。uj5u.com熱心網友回復:
感謝二位的幫助。我先嘗試一下。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/11158.html
標籤:網絡通信/分布式開發
上一篇:delphi XE 練手
下一篇:關于jieba庫的安裝與運行
