Где в get запросе передать входные параметры
Тело запроса: <
«ids»: [
«497f6eca-6276-4993-bfeb-53cbbbba6f08»
]
>
Запрос = Новый HTTPЗапрос(АдресРесурса, Заголовки);
Запрос.УстановитьТелоИзСтроки(JsonСтрока);
Ответ = Соединение.Получить(Запрос);
код такой, в ответ приходить ответ <"errors":["request body has an error: value is required but missing"]>
в документации указан только один параметр, так что я ничего не забыл
пробовал передавать параметры в адресе как параметры, ответ все тот же
пробовал через post, в ответ приходит 405 что метод должен быть get
Не понимаю в чем проблема.
на сколько помню, метод гет исключает передачу параметров через тело запроса. уточните что конкретно ждет веб-сервер..
Как передать параметры через GET-запрос
Я начинающий и не знаю как отправить все необходимые параметры странице, которую хочу открыть. Имеется страница с url sklad . Для открытия страницы sklad, ей необходимо передать все необходимые параметры GET-запросом (какие именно параметры нужно отправить, точно не знаю, но имеется сам код страницы sklad ). Таким образом запускается страница sklad :
sklad = «/gorod/sklad» Как просмотреть параметры, которые отправляются моим GET-запросом, если страница не может быть запущена по причине не подходящих передаваемых параметров GET-запросом? Прошу описать максимально подробно и без использования php. Использую Django 1.6
Отслеживать
задан 7 фев 2017 в 10:53
579 2 2 золотых знака 11 11 серебряных знаков 27 27 бронзовых знаков
Необходимые параметры обычно должны быть видны в описании нужного view.
– user234958
7 фев 2017 в 13:49
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
В джанге нет необходимости передавать параметры в get. В джанге нужные переменные можно включать в адресную строку, которую можно разобрать в конфигурации url.
Если же всё равно надо методом get, то выглядит это так:
http://some-site.ru?var1=value&var2=value2"
Отслеживать
ответ дан 7 фев 2017 в 13:38
Мистер Фикс Мистер Фикс
2,295 2 2 золотых знака 12 12 серебряных знаков 28 28 бронзовых знаков
Спасибо, это то, что надо! Но в своем вопросе я изначально не указал версию Django (сейчас добавил), так что в моем случае больше подходит djbook.ru/rel1.6/intro/tutorial03.html
Как передать параметры в url get запросом?
Есть ли питонячий способ, как передать параметры в стандартной библиотеке urllib? Ссылка идет такой:
https://worldoftanks.ru/wgris/hof/achievements/full/?lang=ru&page=1&page_size=20&battles_count=100&tier_group=1&time_slice=2018-11&stat_type=sbr
Пока что я так реализовал:
from urllib.request import urlopen from urllib.parse import urlencode params = < 'lang': 'ru', 'page': '1', 'page_size': '20', 'battles_count': '100', 'tier_group': '1', 'time_slice': '2018-11', 'stat_type': 'sbr', >r = urlopen("https://worldoftanks.ru/wgris/hof/achievements/full?" + urlencode(params)) print(r)
Но он выдает исключение urllib.error.HTTPError: HTTP Error 404: Not Found что у меня не так?
Как для GET метода передать кастомный тип объекта во входных параметрах?
Как для GET метода передать кастомный тип объекта во входных параметрах?
public class SomeType
public string path
public string als
[return: MessageParameter(Name = «data»)]
public object Pong(string s, SomeType SomeData)
При попытке отправить гет запрос через постман и передать данные, получаем всегда ответ:
Что по факту равно если вообще не передавать параметр.
Но если мы делаем метод POST и передаем в теле этот же параметр вот так:
То работает, чего я не понимаю?
5 комментариев
2 апреля 2022 20:10
Я не помню, что бы в get запросе можно было передавать тело запроса анонимно, для такого метод post предназначен, а get данные через параметры в url всегда передаются.
можно попробовать принять json из урла , сделав так, но это уже извращение
2 апреля 2022 23:27
Dima Avdoshin,
тело запроса это же просто данные, какая разница что передавать данные если их конечно не много через гет или через пост? особенно если ты хочешь только читать данные
2 апреля 2022 23:35
Dima Avdoshin,
вопрос в тому как передать в гет запросе данные так что бы это потому преобразовалось в объект, потому как с List передается и все норм, я вот думаю в чем разница между Guid и моими типами? скрин приложу как передаю
3 апреля 2022 13:57
Стас Гаврилюк,
к сожалению я не смог сделать так как ты, вероятно может получится с помощью класса обертки (код ниже), где в knowType указываются все возвращаемые типы, можешь назвать его как указано ниже
[DataContract] [KnownType(typeof(OpenIdStatus))] [KnownType(typeof(string))] public class ReturnValue [DataMember] public object Value get; set; > >также для меня работало следующее
тоже самое и с обжектом работает
[OperationContract] [WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json, UriTemplate = "/ping/?someObj=")] [return: MessageParameter(Name = "data")] public dynamic Pong(string s, dynamic SomeData) return JsonConvert.DeserializeObject(SomeData); >параметр ввиде объекта определенного типа не принимает , не смог нагуглить почему, пишет , что
>Операция "Pong" в контракте "WebService1C" содержит переменную запроса с именем
"SomeData" и типом "Terrasoft.Configuration.SomeType", но тип
"Terrasoft.Configuration.SomeType" не является преобразуемым посредством
"QueryStringConverter". Переменные для переменных запроса UriTemplate должны иметь типы, которые могут
преобразовываться при помощи "QueryStringConverter".