iT邦幫忙

0

如何 用NOTES AGENT 取得 JSON 的 中文字串

  • 分享至 

  • xImage

可以請問一下 我用的是 9 版 用 AGENT 去取得 REQUEST_CONTENT ,
{"invNum":"1","invDate":"2020/04/28","invCategory":"Õ¢®Õ£ô","price": 50,"sellerName":"123","description":"222"}

invCategory : 中文字 會變亂碼
有什麼方式可以將中文字的部份正常顯示嗎??
已經將 使用 UTF-8 輸出: 改為 是
在 HTML 表單中使用 UTF-8

看更多先前的討論...收起先前的討論...
前端傳進去先編碼
後端在用 lotusscript + formula 解碼
{"invNum":"1","invDate":"2020/04/28","invCategory":"\u5F69\u5713","price": 50,"sellerName":"123","description":"222"}

目前測試 只要傳入unicode notes 就能自動轉成中文
但還在尋找其它方式
會變亂碼是因為作業系統對於中文編碼的方式不一樣
傳回 server 端才會以亂碼顯示 轉成 unicode 應該是目前比較好的解法了
謝謝你的回覆 目前APP 那端也在幫忙找好的方式處理 !! 除了這個文字的問題外,還有圖檔 附件的部份,目前用POSEMAN 只能用form-data 但是NOTES 這裡 一直接不到檔案 看其它的範例都是要用XSP 作業 ,如果一樣用AGENT 去接的話 要如何處理呢??
你是用 @Attachments 接不到嗎
接不到 我附上我的程式碼 ...... 我測試的方式是用 POSEMAN 的form-data 去放檔案 執行 Send 結果就是 產生 REQUEST_CONTENT_000 REQUEST_CONTENT_001 REQUEST_CONTENT_002 但是也打不開文件 我能怎麼改寫呢??

On Error GoTo ErrorMsg
Dim s As New NotesSession
Dim db As NotesDatabase
Set db = s.Currentdatabase
Dim doc As NotesDocument
Set doc = s.DocumentContext
'...Get SOAP in...
Dim username As New NotesName(s.Username)
Dim JsonStr As String
JsonStr= doc.GetItemValue("Request_content")(0)
MsgBox "JsonInvFile?OpenAgent "

Dim temp As Variant
temp=Evaluate(|@Attachments|,doc)
If temp(0) = 0 Then
MsgBox "無附件"
Else
MsgBox "有 " +CStr(temp(0)) + "份"

End If

Dim newDoc As NotesDocument
Set newDoc = New NotesDocument(db)
' Call newDoc.Copyallitems(doc)
Call doc.CopyAllItems( newDoc, True )
newDoc.Form = "inv"
newDoc.CreateDate = Format(Now() , "YYYY/MM/DD HH:MM:SS")

Call newdoc.save(True, True)


Print "content-type: application/json;charset=utf-8"
Print |{"Check":true, "JSON":"|+doc.sJson(0) +|" }|
Exit sub
試試 GetAttachment
你用 copy item 取得附件?
這樣應該行不通
你要取得附件名稱 然後輸出附件到 server端
Call doc.CopyAllItems( newDoc, True ) --> 這是用來顯示 DocumentContext 能抓的到的資料
在NOTES 文件裡 就會變成 REQUEST_CONTENT_000 REQUEST_CONTENT_001 .. 而且就會打不開了
@listennn08 謝謝你 的回應 我再努力找接傳檔的方法 解碼的部份調整JSON 解析裡面的程式碼 就可以了 感謝你!!!
我看了一下 stackoverflow 的問題
https://stackoverflow.com/questions/28590604/does-lotus-domino-9-0-x-still-support-request-content-nnn-fields/31425272#31425272

如果用 Notes 的表單應該是可以接到檔案的
如果不是的話可能要用 java 去帶了
謝謝你 的回應 我最後用JAVA 去做處理 我會再另外放一篇 分享我的程式碼 !!!
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答