25.10.2021, 17:09 | #1 |
Участник
|
работа с RetailCommonWebAPI. DAX12
Всем день добрый.
Подскажите, пожалуйста, в методе RetailCommonWebAPI.makeRequest мы можем передать GET-запрос. А есть ли возможность в этот запрос подкинуть параметры? Вообще очень мало понимания как это работает. Если кто подкинет что почитать - буду благодарна |
|
25.10.2021, 22:56 | #2 |
Administrator
|
Добрый день! А пример с POST-запросом не подойдет?
SIIRegisterMessage* - классы, TaxHMRCHelper_UK - класс. В общем - по перекрестным ссылкам по классу RetailCommonWebAPI примеры можно найти А работает это стандартно, как любой механизм с веб-запросом. Т.е. сначала инициализируется класс RetailWebRequest (в который кладутся данные для запроса), который является обёрткой класса System.Net.HttpWebRequest. Потом вызывается метод GetResponse последнего класса - который выдаёт класс System.Net.HttpWebResponse, у которого в свою очередь есть обёртка в виде класса RetailWebResponse Дальше вынимаются данные из класса RetailWebResponse. Непосредственно процедура передачи управления .NET-классам производится в методе RetailCommonWebAPI.getResponse Собственно, всё Пример стандартного метода с GET-запросом (без параметров) из класса EGAISUTMHelper_RU X++: public static XML makeGETRequest(URL _URL) { RetailCommonWebAPI webApi; RetailWebResponse webResponse; XML responseXml; webApi = RetailCommonWebAPI::construct(); webResponse = webApi.makeRequest(_URL); if (webResponse.parmHttpStatus() == #HttpOK) { responseXml = webResponse.parmData(); } else { throw error(webResponse.parmData() ? webResponse.parmData() : strFmt("@SYP4885905", _URL, webResponse.parmHttpStatus())); } return responseXml; } X++: protected RetailWebResponse makePostRequest( str _requestUrl, str _postData, str _header = '', str _contentType = '') { RetailCommonWebAPI webApi; RetailWebResponse webResponse; webApi = RetailCommonWebAPI::construct(); webResponse = webApi.makePostRequest(_requestUrl, _postData, _header, _contentType); return webResponse; }
__________________
Возможно сделать все. Вопрос времени Последний раз редактировалось sukhanchik; 25.10.2021 в 23:01. |
|
26.10.2021, 05:52 | #3 |
Участник
|
Там же, в принципе, просто используются .NET классы system.net.webrequest и т.д. Поэтому расширить функционал RetailCommonWebAPI используя что-то не реализованное из этих классов довольно легко.
Ну и не совсем понятно, о каких параметрах в методе GET идет речь? стандартным образом для GET вроде бы идет передача параметров в URL: X++: https://www.example.com/index.html?name1=value1&name2=value2 |
|