如何修复json中的换行错误:非法的非引用字符...必须使用反斜杠

时间:2018-05-16 09:16:19

标签: json vba outlook-vba

我使用VBA从Outlook中的电子邮件生成json。

Meetingitem.Body的内容包括换行符。当我将这个内容作为字符串包含在我的json中时,我收到错误。

有可能避免这种情况吗?

{"fields": {
    "project": {
        "id": 30611
    },
    "summary": "Release Produktion-System",
    "description": "Guten Tag

Sie erhalten diese Terminanfrage weil Ihnen im Change 2018.04.24.015 <http://pww.post.ch/appl/oe/it/changemanagement/wpl/pages/editchange.aspx?changeId=29774>  die im Betreff aufgeführte Tätigkeit zugeordnet wurde. Bitte bestätigen Sie die Terminanfrage im Outlook, damit für die Ausführung der Tätigkeit der entsprechende Zeitraum in Ihrem Kalender reserviert wird.
(Unter offene Termine die entsprechende Tätigkeit mit Bearbeiten öffnen, und den Status anpassen. Es stehen Ihnen folgende Abschlussstatus zur Verfügung: Erledigt, Verzögert, Abgebrochen).

Freundliche Grüsse
Muster Mus

Musterfirma
Informatik

Telefon: +553344556622
Email: muster.muss@mail.com

",
    "issuetype": {
        "name": "Test"
    }
}
}

这是对服务器的POST请求,这是响应:

{
    "errorMessages": [
        "Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be included in string value\n at [Source: org.apache@4jasdn4; line: 6, column: 28]"
    ]
}

要生成此json,我使用以下代码(简短变体):

Dim smry, descrp, jsTest As String
smry = """summary"""
descrp = """description"""
jsTest = "{" + smry + ":" + """" + CStr(Msg.Subject) + """" + "," + descrp + ":" + """" + CStr(Msg.Body) + """" + "}"

0 个答案:

没有答案