Комментарий Service Now API прерывается с многострочным комментарием

Я звоню сейчас, чтобы оставить комментарий к сервису:

url = 'https://myinstance.service- 
now.com/api/now/table/incident/' +  sys_id

user = 'user'
pwd = 'pass'

headers = {"Content- 
Type":"application/json","Accept":"application/json"}

# Do the HTTP request
response = requests.patch(url, auth=(user, pwd), headers=headers ,data="{\"work_notes\":\"" +  comment + "\"}")

if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    print(comment)

И это работает, когда переменная комментария представляет собой всего одну строку, но с несколькими строками она прерывается, я удалил \ n из строки, и она действительно работает. Итак, как мне обработать этот запрос с несколькими строками, я не могу избавиться от пробелов, которые комментарии должны выглядеть хорошо отформатированными. Комментарий исходит от zendesk api.

Оператор печати после if not status 200 печатается следующим образом с несколькими строками:

this
is
a
test

person Mario Landa    schedule 24.08.2018    source источник
comment
Как вы удаляете разрывы строк? Вы пытались удалить \ n и \ r и оставить пробелы? - stackoverflow.com/a/16566351/2223138   -  person Jimmy Long    schedule 05.09.2018


Ответы (1)


Это было довольно просто, нужно было преобразовать эту часть запроса в JSON следующим образом:

data = {}
data['work_notes'] = comment
comment = json.dumps(data)
person Mario Landa    schedule 06.09.2018