![]() |
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум | ![]() |
![]() |
Лисоводы всех стран, объединяйтесь !!! |
СБП Райффайзен | |||
---|---|---|---|
hvh2007 Автор Сообщений: 7 |
Добрый день!
Возникла проблема организовать генерацию QR-кода для оплаты черех приложение на VFP9. Пример API: pay.raif.ru Накидал код: SET ECHO ON SUSPEND Local http as "WinHttp.WinHttpRequest" http = Createobject("WinHttp.WinHttpRequest.5.1") Timeout = 0 && milliseconds http.SetTimeouts(Timeout, Timeout, Timeout, Timeout) Http.Option(0)="http_requester/0.1" Http.Option(4)=13056 Http.Option(6)=.t. Http.Option(12)=.t. ********************************************** http.Open("POST", 'https://test.ecom.raiffeisen.ru/api/sbp/v2/qrs',.f.) Http.SetRequestHeader( "Content-type", "Content-Type: application/json") Request='{' Request=Request+'"additionalInfo": "This is test create QR-code",' Request=Request+'"amount": 1,' Request=Request+'"currency": "RUB",' Request=Request+'"order": "4-779-417",' Request=Request+'"paymentDetails": "the first qr-code",' Request=Request+'"qrType": "QRDynamic",' Request=Request+'"sbpMerchantId": "MA347182"' Request=Request+'}' Request=[']+request+['] **************************** SUSPEND http.Send(request) ResulStatus=http.status ResponseText=http.ResponseText ResulStatus=415 ResponseText={"timestamp":"2022-05-16T07:45:50.578+00:00","status":415,"error":"Unsupported Media Type","path":"/external/v2/qrs"} Если кто нибудь имеет опыт подобных работ, не сочтите за труд, подскажите в какую сторону копать. ![]() |
||
Re: СБП Райффайзен | |||
---|---|---|---|
hvh2007 Автор Сообщений: 7 |
Спасибо Каратаеву! forum.foxclub.ru
Этот код сработал: Set Echo On Suspend tcurl="https://test.ecom.raiffeisen.ru/api/sbp/v2/qrs" TEXT TO tcxml { "additionalInfo": "This is test create QR-code", "amount": 1, "currency": "RUB", "order": "4-779-417", "paymentDetails": "the first qr-code", "qrType": "QRDynamic", "sbpMerchantId": "MA347182" } ENDTEXT tcXml = Strconv(tcXml,9) oHTTP = Createobject("MSXML2.XMLHTTP") oHTTP.Open("POST", tcurl) oHTTP.setRequestHeader("Content-Type", "application/json") oHTTP.Send(0h+tcXml) ltStart = Datetime() Do While m.oHTTP.readyState <> 4 DoEvents Force Enddo Local lcResponse Suspend lcResponse = "" Do Case Case m.oHTTP.readyState <> 4 * Не дождались ответа lcResponse = "Нет ответа от сервера" Case !Between(m.oHTTP.Status, 200, 299) lcResponse = m.oHTTP.responseText Messagebox(lcResponse) Otherwise lcResponse = m.oHTTP.responseText Endcase ![]() |
||
© 2000-2022 Fox Club  |