powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ПриватБанк api POST запрос
96 сообщений из 96, показаны все 4 страниц
ПриватБанк api POST запрос
    #39762717
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ребята, при создании банковской платежки, выдает ошибку

Код: xml
1.
2.
3.
4.
5.
6.
7.
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>



текст запроса:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
  strQuery = "{" _
    & """document_number"":""autoclient""," _
    & """recipient_account"":""" & Me.idKlienti.Column(2) & """," _
    & """recipient_nceo"":""" & Me.idKlienti.Column(3) & """," _
    & """payment_naming"":""" & Me.idKlienti.Column(1) & """," _
    & """payment_amount"":""" & Me.payment_amount & """," _
    & """recipient_ifi"":""" & Me.idKlienti.Column(4) & """," _
    & """payment_destination"":""" & Me.payment_destination & """," _
    & """payer_account"":""" & Me.idMoiFirmi.Column(2) & """" _
    & "}"


  myUrl = "https://acp.privatbank.ua/api/proxy/payment/create_pred"
  
  With XMLHTTP
    .Open "POST", myUrl, False
    .setRequestHeader "User-Agent:", "Автоклиент"
    .setRequestHeader "id:", idKlienta
    .setRequestHeader "token:", tokenKlienta
    .setRequestHeader "Content-Type:", "application/json;charset= utf-8"
    .send (strQuery)
    Debug.Print .ResponseText
  End With
 
  



инструкция https://docs.google.com/document/d/e/2PACX-1vTtKvGa3P4E-lDqLg3bHRF6Wi9S7GIjSMFEFxII5qQZBGxuTXs25hQNiUU1hMZQhOyx6BNvIZ1bVKSr/pub

советы техподдержки проблему не решили
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762818
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas,

это точно не правильно
Код: vbnet
1.
.setRequestHeader "Content-Type:", "application/json;charset= utf-8"


Твой запрос не utf-8
С cp1251 пробовал ?

И кириллицу в хедер класть - это очень "смело" :)
Код: vbnet
1.
    .setRequestHeader "User-Agent:", "Автоклиент"


возьми какой-нибудь "стандартный", браузерный , если это вообще обязательный параметр
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762844
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
courtэто точно не правильно
Код: vbnet
1.
.setRequestHeader "Content-Type:", "application/json;charset= utf-8"


Твой запрос не utf-8
С cp1251 пробовал ?

И кириллицу в хедер класть - это очень "смело" :)
Код: vbnet
1.
    .setRequestHeader "User-Agent:", "Автоклиент"


возьми какой-нибудь "стандартный", браузерный , если это вообще обязательный параметр

проблема не там. поменял:
utf-8 на cp1251,
"Автоклиент" на "autoklient"


"Получение информации по выпискам:"
"Получение остатков по счетам:"
тоже самое ("Автоклиент", utf-8), все корректно работает
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762932
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas "Получение информации по выпискам:"
"Получение остатков по счетам:"
тоже самое ("Автоклиент", utf-8), все корректно работаетЭти два метода работают по GET и ты им ничего в теле запроса не передаешь.

А метод create_pred - вызывается POST-запросом, и ему ты, в теле запроса, передаёшь свой json (strQuery)
В нём, наверняка, есть кириллица.
В хедере, ты говоришь вэб-сервису, что данные в кодировке utf-8, а по факту это win-1251

Навсякий, тут есть функция перекодировки в utf-8
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762939
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И это, у тебя тут реально "двоеточия" ? :)
Код: vbnet
1.
2.
3.
4.
    .setRequestHeader "User-Agent:", "Автоклиент"
    .setRequestHeader "id:", idKlienta
    .setRequestHeader "token:", tokenKlienta
    .setRequestHeader "Content-Type:", "application/json;charset= utf-8"


Убирай
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762942
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторcourt
метод create_pred - вызывается POST-запросом,


Такие нюансы(create_pred ) не знал. За подробности - спасибо.
пробовал обе кодировки, результата тот же.

авторcourt

И это, у тебя тут реально "двоеточия" ? :)

Техподдержка тоже предполагала...но и не там ((

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  With XMLHTTP
    .Open "POST", myUrl, False
    .setRequestHeader "User-Agent", "autoklient"
    .setRequestHeader "id", idKlienta
    .setRequestHeader "token", tokenKlienta
    .setRequestHeader "Content-Type", " application/json;charset= cp1251" 'utf-8
    .send (strQuery)
    Debug.Print .ResponseText
  End With


ОТВЕТ
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762947
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas,

по ссылке, json немного поболее твоего ...
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
  strQuery = "{" _
    & """document_number"":""autoclient""," _
    & """recipient_account"":""" & Me.idKlienti.Column(2) & """," _
    & """recipient_nceo"":""" & Me.idKlienti.Column(3) & """," _
    & """payment_naming"":""" & Me.idKlienti.Column(1) & """," _
    & """payment_amount"":""" & Me.payment_amount & """," _
    & """recipient_ifi"":""" & Me.idKlienti.Column(4) & """," _
    & """payment_destination"":""" & Me.payment_destination & """," _
    & """payer_account"":""" & Me.idMoiFirmi.Column(2) & """" _
    & "}"



по ссылке:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Пример тела запроса:

{

"document_number":"autoclient",
"recipient_account":"29001828900110",
"recipient_nceo":"14360570",
"payment_naming":"ПАО, ПАО КБ ПРИВАТБАНК",
"payment_amount":"0.01",
"recipient_ifi":"305299",
"recipient_ifi_text":"ПАТ КБ \"ПРИВАТБАНК\"",
"payment_destination":"test create pmnt to rest API",
"payer_account":"26006055314061",
"payment_ccy":"UAH",
"document_type":"cr",
"payment_date":"04.09.2017",
"payment_accept_date":"04.09.2017"

}



Ты уверен, что это не обязательные атрибуты, - те которые ты не отправляешь ?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762955
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и убери этот пробел
Код: vbnet
1.
"application/json;charset= utf-8"
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762960
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
courtи убери этот пробел
Код: vbnet
1.
"application/json;charset= utf-8"



без пробела ругается, и до этого пробовал
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762961
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
courtVaRas,

по ссылке, json немного поболее твоего ...
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
  strQuery = "{" _
    & """document_number"":""autoclient""," _
    & """recipient_account"":""" & Me.idKlienti.Column(2) & """," _
    & """recipient_nceo"":""" & Me.idKlienti.Column(3) & """," _
    & """payment_naming"":""" & Me.idKlienti.Column(1) & """," _
    & """payment_amount"":""" & Me.payment_amount & """," _
    & """recipient_ifi"":""" & Me.idKlienti.Column(4) & """," _
    & """payment_destination"":""" & Me.payment_destination & """," _
    & """payer_account"":""" & Me.idMoiFirmi.Column(2) & """" _
    & "}"



по ссылке:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Пример тела запроса:

{

"document_number":"autoclient",
"recipient_account":"29001828900110",
"recipient_nceo":"14360570",
"payment_naming":"ПАО, ПАО КБ ПРИВАТБАНК",
"payment_amount":"0.01",
"recipient_ifi":"305299",
"recipient_ifi_text":"ПАТ КБ \"ПРИВАТБАНК\"",
"payment_destination":"test create pmnt to rest API",
"payer_account":"26006055314061",
"payment_ccy":"UAH",
"document_type":"cr",
"payment_date":"04.09.2017",
"payment_accept_date":"04.09.2017"

}



Ты уверен, что это не обязательные атрибуты, - те которые ты не отправляешь ?

Из инструкции:
Обязательные реквизиты:

document_number - номер документа
payer_account - счет отправителя
recipient_account - счет получателя (или recipient_card для платежа на карту)
recipient_nceo - окпо получателя
payment_naming - название получателя
recipient_ifi - мфо получателя
payment_amount - сумма платежа
payment_destination - назначение платежа
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762963
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas Из инструкции:
Обязательные реквизиты:

document_number - номер документа
payer_account - счет отправителя
recipient_account - счет получателя (или recipient_card для платежа на карту)
recipient_nceo - окпо получателя
payment_naming - название получателя
recipient_ifi - мфо получателя
payment_amount - сумма платежа
payment_destination - назначение платежа

Этого payment_ccy нет ни среди обязательных, ни среди не обязательных

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 Не обязательные реквизиты(могут отсутствовать):

document_type - тип документа, по умолчанию cr
payment_date - дата списания, по умолчанию текущая (изменяется с помощью поля “Дата исполнения”)
payment_accept_date - дата зачисления получателя, по умолчанию (изменяется с помощью поля “Дата валютирования”)
payment_cb_ref - референс платежа из старого приват24(если импортирован)
copy_from_ref - референс платежа, с которого скопирован
attach - прикрепленные файлы
signer_msg - сообщение подписанту
odb_msg - сообщение операционисту
recipient_ifi_text - название банка получателя


Попробуй добавить
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39762994
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
court,
добавил. Изменений нет ((
Код: html
1.
2.
3.
4.
5.
6.
7.
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>


Да и почему ответ идет как "html", даже если и не правильно, должен быть json
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763088
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasинструкция https://docs.google.com/document/d/e/2PACX-1vTtKvGa3P4E-lDqLg3bHRF6Wi9S7GIjSMFEFxII5qQZBGxuTXs25hQNiUU1hMZQhOyx6BNvIZ1bVKSr/pub
Я прошелся по Вашей ссылке , и там в инструкции указано , что запросы отправляются методом GET . А из каких источников Вы взяли , что на сервер Вы должны отправлять запрос методом POST ???
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763094
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkManVaRasинструкция https://docs.google.com/document/d/e/2PACX-1vTtKvGa3P4E-lDqLg3bHRF6Wi9S7GIjSMFEFxII5qQZBGxuTXs25hQNiUU1hMZQhOyx6BNvIZ1bVKSr/pub
Я прошелся по Вашей ссылке , и там в инструкции указано , что запросы отправляются методом GET . А из каких источников Вы взяли , что на сервер Вы должны отправлять запрос методом POST ???

Да, Вы правы, по инструкции я тоже делал GET. Не заработало.
Обратился в техподдержку.
Они указали, что надо POST.
Ни POST, ни GET не работает
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763096
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasОни указали, что надо POST.
Неужели они не могут предоставить никакого примера-шаблона по которому нужно отправлять запрос ????
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763115
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasНи POST, ни GET не работает
Я не даю 100% гарантии , но если я правильно понял из описания , то методом GET Вы должны передать ИД пользователя и токен . Это Вы передаете в строке Url , пример как вставить это в строку , есть в описании на сайте . Остальные данные Вы можете передать Ajax запросом в формате JSON . Я не знаю как это делается в Access , но Вы можете попробовать это сделать прямо из браузера. Для этого Вам в текстовом редакторе нужно создать простенькую HTML страницу , сохранить файл с расширением HTML и запустить в браузере . Дополнительно скачать и подключить библиотеку jQuery , лучше версию 3.3.1 и написать простенький скрипт . Вот пример отправки Ajax запроса из браузера.
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
       <script>
           $.ajax({
	   type:'POST',
	    url:'строка GET запроса url',
	    dataType:'json',
	    data:JSON.stringify(Здесь передается массив запроса)
	    	})
	    .done(function(response){
	     console.log(response);		
	    }); 
        </script>


В браузере нажмете F12 перейдите на вкладку Console перезагрузите страницу Ctl+F5 и Вы прочитаете ответ сервера. Может там более или менее прояснятся ошибки. А ошибка 500 это общая ошибка сервера.
Как то так наверное. :))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763118
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,

нашел одну ошибку
исправлением слов GET на POST проблему не решить

исправил

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
  With CreateObject("WinHttp.WinHttpRequest.5.1")
    .Open "POST", myUrl, False
    .setRequestHeader "POST", " /auth/createSession HTTP/1.1"
    .setRequestHeader "User-Agent", "autoklient"
    .setRequestHeader "id", idKlienta
    .setRequestHeader "token", tokenKlienta
    .setRequestHeader "Content-Type", " application/json;charset=cp1251" 'utf-8
    .send (strQuery)
    Debug.Print .Status
    Debug.Print .ResponseText
  End With



теперь выдает ошибку
.Status 201
.ResponseText -2147023783 Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763119
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasНи POST, ни GET не работаетХотя немного соврал , ИД и токен тоже передаете в скрипте методом пост. Вот нашел пример в инете .

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
  $.ajax({
    url: 'YourRestEndPoint',
    headers: {
        'Authorization':'Basic xxxxxxxxxxxxx',
        'X_CSRF_TOKEN':'xxxxxxxxxxxxxxxxxxxx',
        'Content-Type':'application/json'
    },
    method: 'POST',
    dataType: 'json',
    data: YourData,
    success: function(data){
      console.log('succes: '+data);
    }
  });


Удачи. Надеюсь получится.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763120
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasтеперь выдает ошибку
.Status 201
.ResponseText -2147023783 Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.
201 это не ошибка , это ответ сервера . Когда все ОК вы должны получить код 200 . Вы на правильном пути , значит Вы уже достучались до сервера . Теперь играйтесь с юникодами.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763121
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas.ResponseText -2147023783 Символ Юникода
Почему в этой строке
Код: html
1.
.setRequestHeader "Content-Type", " application/json;charset=cp1251" 'utf-8


перед utf8 только один апостроф? Так должно быть ? Обычно пара .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763122
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManVaRas.ResponseText -2147023783 Символ Юникода
Почему в этой строке
Код: html
1.
.setRequestHeader "Content-Type", " application/json;charset=cp1251" 'utf-8



перед utf8 только один апостроф? Так должно быть ? Обычно пара . Или это комментарий в VBA ? Тогда попробуйте в charset=utf8 или utf8_unicode
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763124
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
courtи убери этот пробел
Код: vbnet
1.
"application/json;charset= utf-8"



с этим пробелом - какая-то засада
С пробелом ответ
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>



БЕЗ пробела
Код: vbnet
1.
-2147023783   Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763126
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkManПочему в этой строке
Код: html
1.
.setRequestHeader "Content-Type", " application/json;charset=cp1251" 'utf-8


перед utf8 только один апостроф? Так должно быть ? Обычно пара .

в VBA комментарий берется в апостроф (')
На работу кода не влияет
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763127
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasБЕЗ пробела
Код: vbnet
1.
-2147023783   Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.


Пробуйте без тире charset=utf8 или charset=utf8_unicode. Типа такого
Код: html
1.
'charset' => 'utf8mb4',


Это пример в PHP , а вот это в HTML
Код: html
1.
<meta charset="utf-8">
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763128
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VaRascourtи убери этот пробел
Код: vbnet
1.
"application/json;charset= utf-8"



с этим пробелом - какая-то засада
С пробелом ответ
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>



БЕЗ пробела
Код: vbnet
1.
-2147023783   Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.



было бы хорошо, если бы была возможность исправлять.
данный глюк наблюдается не с "UTF-8", а с "cp1251"
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763131
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasданный глюк наблюдается не с "UTF-8", а с "cp1251"
а utf-8 проскакивает ? В последнее время в браузерах рекомендуют кодировку utf-8 или еще utf-8mb4 .

Вообщем играйтесь с кодировками . Полазайте по интернету . Но ответ 201 , лучше чем 500 . Вы уже где то у цели. :))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763132
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan Удачи. Надеюсь получится.
Говорят мысль нематериальная )))
Вы ее послали и Лед тронулся. Пошла вода.
перешел на страницу форума читаю Ваше это сообщение.

получил
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
Формат успешного ответа:
код - 201
тело ответа:
{
"payment_ref": "референс созданного платежа"
"payment_pack_ref": "запакованный референс созданного платежа"
}



Если деньги (0.01 грн) спишется, код выложу.

Спасибо!!!
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763133
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю , поможет ли , но при запросах из PHP к baze Access я столкнуля с крякозябрами , пока не включил вот это. Это фишка Win 10 или наооборот выключить. Так как была проблема с выгрузкой из Access в XML файл . Посмотрите здесь . Если у Вас 10 конечно.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763134
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasЕсли деньги (0.01 грн) спишется, код выложу.
я это на сайте видел , но Вы то про юникоды писали.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763136
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,
вопрос решился через
charset=UTF-8 (именно в таком написании, без пробелов!!!)
именно UTF-8, не utf8 и тем более не cp1251
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763139
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRascharset=UTF-8 (именно в таком написании, без пробелов!!!)
Теперь понял. Ну насколько я помню в VBA пробелы имеют значение. Это в HTML или PHP по барабану. :))
Ну я рад , что у Вас получилось. :))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763140
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRascharset=UTF-8 (именно в таком написании, без пробелов!!!)
Во, нашел в одной умной книШке. Если чО.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763143
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,

о, что надо
случайно ссылки для скачивания нет?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763145
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasслучайно ссылки для скачивания нет?mЭто сильнейшая книга бестселлер называется Java Script Подробное руководство . Это как Гетц для Access . Наберите в гугле JavaScript Подробное руководство 6 издание . Она есть в электронном виде . Не хочу здесь рекламировать пиратские ссылки .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763147
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763152
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,
Спасибо. Почитаю
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763282
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasDarkMan,
вопрос решился через
charset=UTF-8 (именно в таком написании, без пробелов!!!)
именно UTF-8, не utf8 и тем более не cp1251
Очень странно если он решился именно из-за этого ...

Во-первых в приватовской доке указан именно utf8
авторContent-Type: application/json;charset=cp1251
Поддерживаемые кодировки utf8 и cp1251. Если charset не указан, кодировка по умолчанию cp1251.
Во-вторых, вот на хабре выкладывали реализацию того, что ты делаешь на JS , и там тоже utf8
Код: javascript
1.
2.
3.
4.
5.
6.
7.
  var options = {
    'method' : 'post',
    'contentType' : 'application/json;charset=utf8',
    'headers' : headers,
    'payload' : JSON.stringify(payload),
    'muteHttpExceptions' : true
  }; 


Имхо, вэб-сервис просто и тупо не понимает это твоё UTF-8, и использует кодировку по умолчанию, т.е. cp1251

Попробуй вообще убрать charset.
Вот так
Код: vbnet
1.
    .setRequestHeader "Content-Type:", "application/json"


Пройдет запрос ?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763372
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
court,
уже все работает...писал несколько постов выше

VaRasDarkMan,
вопрос решился через
charset=UTF-8 (именно в таком написании, без пробелов!!!)
именно UTF-8, не utf8 и тем более не cp1251
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763402
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
courtВо-первых в приватовской доке указан именно utf8
В принципе , теоретически возможно . Если посмотреть скрин из книги по JavaScript , то там тоже charset=UTF-8 . Вот только я не могу утверждать насчет пробела после знака равенства . Так как запрос отправляется из VBA. Если бы я писал script в браузере или файле js то пробел бы игнорировался .
Что касается utf8 , то я тоже приводил выше пример . Если у меня в браузере в заголовке стоит
<meta charset="utf-8"> , то в запросе Ajax я вообще не указывал кодировку , правда запрос был с применением библиотеки jQuery . При подключении к базе MySQL например в строке подключения я тоже указывал charset=>utf8 . Так что нужно учитывать все нюансы и смотреть manual. :))
courtИмхо, вэб-сервис просто и тупо не понимает это твоё UTF-8, и использует кодировку по умолчанию, т.е. cp1251
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763404
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выкладываю рабочий код. Может кому пригодится.
Документ только создается/сохраняется!
Надо зайти в Приват24 для юр.лиц, ПОДПИСАТЬ и ОТПРАВИТЬ.
Подписать/отправить - техподдержка ответила - в стадии разработки
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
Private Sub PostZapros()
On Error GoTo lbl
Dim XMLHTTP As New MSXML2.XMLHTTP60
Dim sHTTP As New WinHttp.WinHttpRequest
Dim strQuery As String, myUrl As String
  
  strQuery = "{" _
    & """document_number"":""autoclient""," _
    & """recipient_account"":""" & Me.idKlienti.Column(2) & """," _
    & """recipient_nceo"":""" & Me.idKlienti.Column(3) & """," _
    & """payment_naming"":""" & Me.idKlienti.Column(1) & """," _
    & """payment_amount"":""" & Me.payment_amount & """," _
    & """recipient_ifi"":""" & Me.idKlienti.Column(4) & """," _
    & """payment_destination"":""" & Me.payment_destination & """," _
    & """payer_account"":""" & Me.idMoiFirmi.Column(2) & """" _
    & "}"
  'Debug.Print strQuery


  myUrl = "https://acp.privatbank.ua/api/proxy/payment/create_pred"
  
  With sHTTP 'XMLHTTP тоже работает
    .Open "POST", myUrl, False
    .setRequestHeader "User-Agent", "autoklient"
    .setRequestHeader "id", idKlienta
    .setRequestHeader "token", tokenKlienta
    .setRequestHeader "Content-Type", " application/json;charset=UTF-8"
    .send (strQuery)
    Debug.Print .Status
    Debug.Print .ResponseText
  End With
    
lbl:
  If Err.Number <> 0 Then _
    Debug.Print Err.Number, Err.Description
  
  On Error Resume Next
  
  Debug.Print "sHTTP.Status: ", sHTTP.Status
  Debug.Print "XMLHTTP.Status:", XMLHTTP.Status
  
  Set sHTTP = Nothing
  Set XMLHTTP = Nothing

End Sub
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763418
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
courtПопробуй вообще убрать charset.
Вот так
Код: vbnet
1.
    .setRequestHeader "Content-Type:", "application/json"


Пройдет запрос ?

ответ:
Код: xml
1.
2.
201
-2147023783   Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.



из Приватовской инструкции
"Если charset не указан, кодировка по умолчанию cp1251."
как уже писал выше "charset=cp1251" вообще не работает
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763440
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas как уже писал выше "charset=cp1251" вообще не работает
На Украине ничО российское не работает.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763464
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,

)))

просьба, политику не затрагивать!
иначе пост уйдет не в то русло ))

PS
Приставка "на" используется к отдельно расположенным территориям, типа острова. Пример: "на Мальдивах".
Все говорят "на Украине" правильно же использовать "В Украине".

это я так, поумничал))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763488
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значения ваших полей, которое вы посылаете в запросе, точно не юникод. Надо рекодить.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763490
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasDarkMan,

)))

просьба, политику не затрагивать!
иначе пост уйдет не в то русло ))

PS
Приставка "на" используется к отдельно расположенным территориям, типа острова. Пример: "на Мальдивах".
Все говорят "на Украине" правильно же использовать "В Украине".

это я так, поумничал))

на Руси? На Донбассе? Хватит, есть определенные правила и исторические нормы. А здесь так и вовсе форум по программированию.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763510
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Озверин...Надо рекодить.
что именно надо сделать?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763561
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas, в общем случае все тело вашего запрос надо енкодить в utf8. Для этого использовать ф-ию типа WideCharToMultiByte(она не аксовая). А по получается, что требование utf есть, а сам текст приходит в cp1251.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763582
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотрел, что там еще json. В json вам надо чуть-чуть заранее подумать про энкапсуляцию символов, ибо в json некоторые символы надо экранировать. Может быть стоит юзать какую-нить либу для этого .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763609
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Озверин,
есть такая буква. Спасибо подсказали.

проверил на двойных (") кавычках. Фокус не прошел.
Надо подумать, как пройти.
Либо дублирование, либо...

PS интересно, с какими еще символами, фокус не идет?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763619
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasPS интересно, с какими еще символами, фокус не идет?

Недопустимые символы в JSON или какие символы нужно экранировать?

Код: xml
1.
2.
3.
4.
5.
6.
7.
\b  Backspace (ascii code 08)
\f  Form feed (ascii code 0C)
\n  New line
\r  Carriage return
\t  Tab
\"  Double quote
\\  Backslash character
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763632
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasВсе говорят "на Украине" правильно же использовать "В Украине
Як умру, то поховайте

Мене на могилі

Серед степу широкого

На Вкраїні милій,

Тарас Григоривич Шевченко
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763664
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
court,
ого...
есть над чем работать ))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763670
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,
мы же говорили о грамматике русского языка ))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763695
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasDarkMan,
мы же говорили о грамматике русского языка )) Ну в грамматике русского в Украине стало после 2014 года .
P.S Я потомственный украинец если чО. Отец с западной, мать с запорожья , а я родился на Донбассе . Так что политикой здесь и не пахнет .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763697
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как определить используется ли в строке символ TAB
так находит
Код: vbnet
1.
2.
?instr("""" & vbtab &"""",vbtab)
 2 



а так - нет
Код: vbnet
1.
2.
?instr("	",vbtab)
 0 
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763712
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasкак определить используется ли в строке символ TAB
так находит
Код: vbnet
1.
2.
?instr("""" & vbtab &"""",vbtab)
 2 



а так - нет
Код: vbnet
1.
2.
?instr("	",vbtab)
 0 



в настройках акса, вроде как, есть по умолчанию поведение таба - это пробелы. Настраивается только кол-во..так что это - пробелы, а не таб. По сути, экранировать то надо 2 символа - " и \, по остальным - вряд ли оно кому-то понадобится и лучше таки пробелы везде, чем табы.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763722
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинв настройках акса, вроде как, есть по умолчанию поведение таба - это пробелы.
+1 (только это настройки редактора ВБА)




Tab Width — Sets the tab width, which can range from 1 to 32 spaces; the default is 4 spaces.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763747
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
court,

TabWidth=2 (я выставлял)
т.е 2 пробела

я так понимаю, 2-ной пробел должен воспринимать как как TAB.
все равно не находит
Код: vbnet
1.
2.
?instr("  ",vbtab)
 0 
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763761
Фотография court
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRascourt,

TabWidth=2 (я выставлял)
т.е 2 пробела

я так понимаю, 2-ной пробел должен воспринимать как как TAB.
все равно не находит
Код: vbnet
1.
2.
?instr("  ",vbtab)
 0 

Нет там Таб-а.
Тебе ж про это и пишут: редактор ВБА заменяет ТАБ на определенное в Опшионах к-во пробелов
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763766
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VaRas,

Двойной пробел это два пробела chr(32) & chr(32)

Код: vbnet
1.
?instr("  ",chr(32) & chr(32))



А по поводу защиты от лишних символов можно сделать функцией

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
  function ReSpec (text)
    ReSpec  = text
    ReSpec  = replace(ReSpec, "\", "\\")
    ReSpec  = replace(ReSpec, vbLf, "\n")
    ReSpec  = replace(ReSpec, vbCr, "\r")
    ReSpec  = replace(ReSpec, vbTab, "\t")
    ReSpec  = replace(ReSpec, """", "\""")
  end function

....
& """payment_destination"":""" & ReSpec (Me.payment_destination) & """," _
....
  
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763769
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А вот и про перекодировку тыц
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763777
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Swa111А по поводу защиты от лишних символов можно сделать функцией

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
  function ReSpec (text)
    ReSpec  = text
    ReSpec  = replace(ReSpec, "\", "\\")
    ReSpec  = replace(ReSpec, vbLf, "\n")
    ReSpec  = replace(ReSpec, vbCr, "\r")
    ReSpec  = replace(ReSpec, vbTab, "\t")
    ReSpec  = replace(ReSpec, """", "\""")
  end function

....
& """payment_destination"":""" & ReSpec (Me.payment_destination) & """," _
....



отлично. спасибо!!!
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763779
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Swa111А вот и про перекодировку тыц

позже дойду и до него.
Спасибо
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763855
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОзверинVaRas, в общем случае все тело вашего запрос надо енкодить в utf8. Для этого использовать ф-ию типа WideCharToMultiByte(она не аксовая). А по получается, что требование utf есть, а сам текст приходит в cp1251.

Про перекодировку писали мне и раньше.
Сейчас задумался, для чего она мне?
Какие у меня проблемы с кодировкой?
В платежке отправитель, получатель, назначение все в кириллице и формируется корректно.
На клиент-банке все отображается тоже правильно.
Скриншот прилагаю
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763860
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas, я не знаю, это вы на целую страницу или две обсуждали как правильно utf8 или utf-8. Судя по инструкции cp1251 поддерживается по умолчанию.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763862
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ОзверинVaRas, я не знаю, это вы на целую страницу или две обсуждали как правильно utf8 или utf-8. Судя по инструкции cp1251 поддерживается по умолчанию.

Я выше писал, ни с одной из кодировок, указанной в инструкции, у меня не пошло.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763869
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas, значит надо смотреть, что у вас не так с запросом? Например, не корректный формат даты передаете или деньги передаете с запятой вместо точки(когда к стрингу конвертите).

Когда все проверите - ну лучше долбить техподдержку, пусть пришлют вариант корректного запроса хотя бы, ибо сервер присылает 500-ю ошибку..которая может говорить и о том, что сервер тупо сбоит.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763874
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Озверин,

Программа работала, но если бы были случаи, как с экранированием символов - был бы сбой.
Благо парни помогли, разобрался и с ними.

Если других подводных камней нет, то код полностью рабочий ))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763932
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRasСейчас задумался, для чего она мне?
Истину глаголите друХ мой , проблемы нужно решать по мере их поступления . Всех проблем сразу не решить.
ОзверинСудя по инструкции cp1251 поддерживается по умолчанию.
Да что Вы все зациклились на этой cp1251 . Я уже намекал ТС про Россию и Украину . И это было не с политической точки зрения , а чисто технической . Я сомневаюсь что на украинских сайтах будет кодировка 1251 , так как там могут использоваться национальные украинские символы , а 1251 может превратить их в крякозябры. Сейчас многие сайты уже используют кодировку utf8 или utf8mb4 чтобы не заморачиваться на локализациях. К тому же выше был приложен скрин из книги JavaScript с правильным синтаксисом указания charset при отправке запроса. Так что скорее всего кодировка на сервер проскакивает. Конечно можно поиграться с запросом Ajax и этими кодировками. Но я могу это сделать только из PHP и MySQL , так как не имею доступа к украинским сайтам . :))
P.S А обработка всякого рода кавычек , обратных слешев кареток , html тэгов и тому подобное , это проблема сервера , а не клиента . Простые юзеры , а тем более хакеры не будут экранировать кавычки при отправке данных на сервер .
Так , что топик на 3 страницы раздул не ТС , а приверженцы кодировки cp1251 . :))
Всем спасибо за внимание.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763933
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинНапример, не корректный формат даты передаете или деньги передаете с запятой вместо точки(когда к стрингу конвертите).
Передайте . Если сервер правильно не обработает запрос. Получите ошибку 500 . На сервере , практически все данные принимаемые от клиента обрабатываются . Тем более если это банковская система приема платежей. Еще раз напоминаю про хакеров. И если сервер проглатывает запрос ТС и возвращает код ответа 200 , значит все прошло на Ура, и не нужно самому усложнять ситуацию.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763937
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManP.S А обработка всякого рода кавычек , обратных слешев кареток , html тэгов и тому подобное , это проблема сервера , а не клиента

делать это обязан клиент, а не сервер. И под клиентом - подразумевается клиентское приложение, о разработке которого и идет речь.


DarkManДа что Вы все зациклились на этой cp1251 . Я уже намекал ТС про Россию и Украину . И это было не с политической точки зрения , а чисто технической . Я сомневаюсь что на украинских сайтах будет кодировка 1251 , так как там могут использоваться национальные украинские символы , а 1251 может превратить их в крякозябры

1251 содержит символы украинского.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763939
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManОзверинНапример, не корректный формат даты передаете или деньги передаете с запятой вместо точки(когда к стрингу конвертите).
Передайте . Если сервер правильно не обработает запрос. Получите ошибку 500 . На сервере , практически все данные принимаемые от клиента обрабатываются . Тем более если это банковская система приема платежей. Еще раз напоминаю про хакеров. И если сервер проглатывает запрос ТС и возвращает код ответа 200 , значит все прошло на Ура, и не нужно самому усложнять ситуацию.

сервер возвращает код ошибки - 500. По крайней мере так следует из первого сообщения. И я совершенно не понимаю, что вы и кому пытаетесь сказать. И чего вы постоянно кучу скобок ставите? Это реально так смешно?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763942
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинИ я совершенно не понимаю, что вы и кому пытаетесь сказать.
Сказать пытаетесь Вы , а не я . ТС написал , что все работает . Так нет , нужно продолжать тему .
ОзверинИ чего вы постоянно кучу скобок ставите? Это реально так смешно?
Мне смешно. Если Вас раздражает , сорри тогда не буду.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763944
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMan, а в следующий раз, когда НЕ заработает, он даже не поймет - почему.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763946
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинсервер возвращает код ошибки - 500. По крайней мере так следует из первого сообщения.
ОК . Давайте попросим ТС в своем рабочем коде изменить строку charset= UTF-8 на charset= utf-8 , а затем просто убрать пробел charset=utf-8 . И написать результаты исследований. Затем можно поиграться с
charset= cp1251 и charset=cp1251 без пробела . Так же можно попробовать заменить charset=UTF-8 рабочее , на charset=UTF8 без пробела. И тогда можно будет делать какие нить выводы по кодировке .
P.S кучу скобок не ставлю.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763948
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинDarkMan, а в следующий раз, когда НЕ заработает, он даже не поймет - почему.
Вот в следующий раз обратится на форум и все вместе будем гадать.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763949
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинDarkMan, а в следующий раз, когда НЕ заработает, он даже не поймет - почему.
я предложил эксперементировать .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763951
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMan, зачем это делать? Я говорю о чисто технической стороне вопроса: кодировке тела запроса и валидном составлении json.

Когда вы ставите кодировку, которую сервер не может распознать, он подставляет ту, которая по умолчанию, то есть cp1251. То есть стабильно в 1 случае из всех остальных ваш запрос не пройдет: когда таки сможете указать кодировку правильно(utf которая) и тело запроса будет в некорректной кодировке - cp1251.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763952
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверин1251 содержит символы украинского.а например литовского> немецкого ? датского ? или ........
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763953
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManОзверинDarkMan, а в следующий раз, когда НЕ заработает, он даже не поймет - почему.
я предложил эксперементировать .

зачем? Есть спека, есть определенные правила. Зачем экспериментировать? Если все соблюдено - дальше должна работать техподдержка, при условии, что запрос возвращает 500.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763954
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManОзверин1251 содержит символы украинского.а например литовского> немецкого ? датского ? или ........


вопрос про русский и украинский же. Причем тут немецкий?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763955
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинкоторая по умолчанию, то есть cp1251.
VaRascourt,
уже все работает...писал несколько постов выше

VaRasDarkMan,
вопрос решился через
charset=UTF-8 (именно в таком написании, без пробелов!!!)
именно UTF-8, не utf8 и тем более не cp1251
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763956
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMan, так тело запроса то не в utf кодировке. Вас ничего не смущает?
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763958
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверинвопрос про русский и украинский же. Причем тут немецкий?
А если я представитель литовской или немецкой фирмы и буду отправлять свои реквизиты ? Мне это делать на русском или украинском? Или переригистрировать фирму????
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763959
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинDarkMan, так тело запроса то не в utf кодировке. Вас ничего не смущает?
Продолжим после 17 часов . ОК? !!!
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763961
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManОзверинвопрос про русский и украинский же. Причем тут немецкий?
А если я представитель литовской или немецкой фирмы и буду отправлять свои реквизиты ? Мне это делать на русском или украинском? Или переригистрировать фирму????

Я изначально предлагал енкодить в utf вообще-то.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763971
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинЯ изначально предлагал енкодить в utf вообще-то.я тоже предлагал . Но если бы делал я, я бы попробовал поэксперементировать. Если есть желание конечно .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39763976
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkManОзверинЯ изначально предлагал енкодить в utf вообще-то.я тоже предлагал . Но если бы делал я, я бы попробовал поэксперементировать. Если есть желание конечно .


тут поцоны решили тоже поржать и предложили сначала чего - нить прочесть: http://www.iana.org/assignments/character-sets/character-sets.xhtml
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764107
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkManОзверинЯ изначально предлагал енкодить в utf вообще-то.я тоже предлагал . Но если бы делал я, я бы попробовал поэксперементировать. Если есть желание конечно .

"charset=UTF-8" (без пробела) все работает

Кодировки проверял попеременно. Чтобы не расписывать каждую, сгруппировал.

charset=UTF8/cp1251 (без пробела)
Код: vbnet
1.
2.
 201 
-2147023783   Символ Юникода не имеет сопоставления в конечной многобайтовой кодовой странице.



charset= cp1251/UTF8/UTF-8 (везде, где есть пробелы)
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
 500 
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764280
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas, Теперь попробуйте charset=utf-8 /cp-1251/CP-1251
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764290
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkManVaRas, Теперь попробуйте charset=utf-8 /cp-1251/CP-1251
Насчет utf-8. Без изменений. Только она и работает

cp-1251/CP-1251
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
 500 
<html>
<head><title>500 Internal Server Error</title></head>
<body bgcolor="white">
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx</center>
</body>
</html>
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764301
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas,В первом случае utf-8 большими , а во втором маленькими . Т.е регистр не имеет значения? Работает и тот и тот случай ? Да . Еще забыл в браузере после изменений нужно нажимать ctl+F5 . Так как он иногда загружает из кеша .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764303
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DarkMan,

Я думаю оставьте рабочий вариант и пока не парьтесь . Решайте проблемы по мере их поступления .
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764317
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkManVaRas,В первом случае utf-8 большими , а во втором маленькими . Т.е регистр не имеет значения? Работает и тот и тот случай ? Да . Еще забыл в браузере после изменений нужно нажимать ctl+F5 . Так как он иногда загружает из кеша .

в вопросе utf-8/UTF-8 от регистра либо не зависит, либо оба варианта работают

DarkManЯ думаю оставьте рабочий вариант и пока не парьтесь . Решайте проблемы по мере их поступления .


так и делаю ))
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764322
DarkMan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VaRas,ну если оба работают значит регистр не зависит. Так и должно быть просто вчера или мне показалось или проскочила фраза utf-8 не работает. Вот поэтому и уточняю.
...
Рейтинг: 0 / 0
ПриватБанк api POST запрос
    #39764336
VaRas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DarkMan,
Так. Пока работает. Спасибо ))
...
Рейтинг: 0 / 0
96 сообщений из 96, показаны все 4 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ПриватБанк api POST запрос
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]