Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87

При передачи тела запроса json добавляются кавычки, почему?

12.12.2022, 17:37. Показов 2921. Ответов 18

Студворк — интернет-сервис помощи студентам
Добрый день.
Есть такой запрос
i
Python
1
2
3
d = '1111111111'
search_order ={"orderId": id}
url = requests.post("https://siteapi/api/orders/search",data=search_order,headers=headers)
в search_order записывается кавычки в начале и в конце, это строка в итоге выходит '{"orderId":111111111}'
Как убрать эти кавычки в начале и в конце ?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.12.2022, 17:37
Ответы с готовыми решениями:

Почему метод GET не годится в качестве ajax-запроса для передачи json?
Здравстуйте. Сразу отмечу, что я в этом лишь новичек. Во-вторых, java тут, в большей степени, за уши притянута, но вполне возможно, что это...

Добавляются кавычки к пробелу при записи формулы в имя листа
Добрый день всем! при записи формулы в имена листа =ПРАВСИМВ(форма3!P11;ДЛСТР(форма3!P11)-ПОИСК(" ";форма3!P11;4)) добавляет...

Почему дробные числа в JSON заключаются в кавычки?
Здравствуйте!Подскажите пожалуйста вывожу json_encode(); массив...

18
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 17:51
кто тебе сказал что добавляются? кроме того для чтобы слать именно жсон нало и писать json=search... почитай доку реквестов то
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 17:53  [ТС]
Что там читать, если питон кавычки добавляет в начало и в конец переменной.
Если не указывать переменную, а сразу номер заказа, то всё работает!
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 17:58
Цитата Сообщение от Cemxo3 Посмотреть сообщение
Что там читать
читать про то как отправить жсон в пост запросе

Цитата Сообщение от Cemxo3 Посмотреть сообщение
если питон кавычки добавляет в начало и в конец переменной.
какой? в твоем коде это не очевидно

Добавлено через 2 минуты
Python
1
2
3
4
5
6
>>> d = '1111111111'
>>> search_order ={"orderId": d}
>>> search_order
{'orderId': '1111111111'}
>>> type(search_order)
<class 'dict'>
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:25  [ТС]
body = json.JSONEncoder().encode(search_order)
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:34
Cemxo3, а где в твоем начальном посте такой код?

рано ты взялся за апи то. Идем в документацию json, находим там твою функцию, смотрим что она возвращает
Code
1
2
3
4
5
Return a JSON string representation of a Python data structure.
 
        >>> from json.encoder import JSONEncoder
        >>> JSONEncoder().encode({"foo": ["bar", "baz"]})
        '{"foo": ["bar", "baz"]}'
То есть ты задаешь вопрос -почему у тебя возвращается строка в результате вызова функции, которая и ДОЛЖНА вернуть строку.

смотри, в библиотеке json есть функции dumps и loads которые соответственно превращают словарь в строку и наоборот. Но если тот код что ты выше показал у тебя выполняется на бекенде какого-нибудь фласка или фастапи, то там все проще делается.
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:35  [ТС]
Я задаю вопрос почему кавычки в начале и в конце добавляются.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:37
Cemxo3, повторяю - потому что это строка. Не словарь, как search_order
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:38  [ТС]
И что мне нужно сделать, чтобы не было кавычек ?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:39
Cemxo3, то что я выше написал, например превратить ее в словарь. Могу лишь догадываться, ты же не написал чего добиваешься.
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:39  [ТС]
Мне нужно передать json на сервер в таком виде :
{
"orderId": "41171610"
}
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:41
если его передавать правильно, а не как у тебя в 1 сообщении, то он так и передастся на сервер.
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:42  [ТС]
Я не знаю изначально номер заказа, поэтому записал его в переменную.
Поэтому сложность в том, как передать через переменную ?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:44
Cemxo3, тебе надо просто сделать над собой усилие и еще раз прочитать мои ответы начиная с первого. ты должен писать вот так
Python
1
2
3
d = '1111111111'
search_order ={"orderId": d}
resp = requests.post("https://siteapi/api/orders/search", json=search_order, headers=headers)
а потом просто правильно его получить на сервере
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:50  [ТС]
Название: photo_2022-12-12_18-49-52.jpg
Просмотров: 28

Размер: 4.1 Кб
Одинарные кавычки, а нужны двойные.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:56
Cemxo3, не, ну раз ты не хочешь читать, что я пишу и не способен код скопировать и вставить, то я умываю руки
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:57  [ТС]
Я не пойму, что Вам нужно отправить, уточните.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7390 / 4817 / 1246
Регистрация: 30.03.2015
Сообщений: 13,664
Записей в блоге: 29
12.12.2022, 18:58
я даже код написал. мне отправлять ничего не нужно, себе отправь, но жсон а не дата
0
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 87
12.12.2022, 18:59  [ТС]
Там ошибка, из-за того, что кавычки одинарные'', а нужны двойные ""
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.12.2022, 18:59
Помогаю со студенческими работами здесь

Прием Json в качестве тела для последующего разбора и запроса типа UPDATE mysql
Здравствуйте! Подскажите пожалуйста, как лаконичней всего обработать Json и вставить данные из него в тело запроса передаваемого в mySql....

При обновлении страницы добавляются записи в JSON
Добрый день. Подскажите, почему после ввода формы, нажатия кнопки отправки и при последующих обновлениях страницы без ввода информации в...

В ComboBox при заполнении из запроса добавляются пробелы
БД FireBird 2.5 Пишу запрос а-ля SELECT field1 FROM Table1, а потом закидываю из IBQuery строки этого поля в ComboBox (далее CB). И...

Почему при нажатии кнопки не добавляются новые поля?
Добрый день, хочу что бы при нажатии кнопки добавилась новое поля, заранее спасибо за ответ)) &lt;!DOCTYPE html&gt; &lt;html&gt; ...

Ошибка при парсинге тела запроса Django
Делаю API в Django, обернув PostgreSQL, Redis и еще один инструмент в Docker. Нужно сделать POST запрос с JSON в теле (файл корректный)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru