Я пытаюсь понять iso8583 и как отправить его нашему платежному провайдеру. Я вижу, что первая часть структуры сообщения — это идентификатор типа сообщения. Я использовал 0100 для авторизации, что кажется правильным. Однако также кажется, что я не отправляю его в правильном формате. Я просто отправил двоичное представление, то есть я отправил, а затем остальную часть сообщения. Нужно ли мне конвертировать 0100 в байты перед отправкой? Я использую node.js. Любая помощь приветствуется, так как это очень сложная тема.
Как преобразовать двоичный файл в байт для iso8583?
Ответы (2)
Вы должны использовать формат ascii. В вашем случае вы должны отправить авторизацию, используя 4 байта 0100 ascii, представление в шестнадцатеричном виде: 0x30 0x31 0x30 0x30
person
Panagiotis Giannakis
schedule
09.08.2017
Спасибо. Нужно ли мне конвертировать двоичный код (0100) в ascii?
- person user8408326; 09.08.2017
если вы рассматриваете MTI, то это не двоичное значение, это литерал 0100 для запроса авторизации и 0110 для ответа. одно и то же поле может содержать такие значения, как 0200 или 0430, не путайте 0 и 1
- person A.Rashad; 26.08.2017
Я все еще в замешательстве. Извини за это. Скажем, у меня есть 0100, что именно мне отправить сюда? Есть ли онлайн-конвертер, который может мне помочь? Спасибо.
- person user8408326; 29.08.2017
Панайотис говорил, что MTI (и остальную часть сообщения) необходимо преобразовать из ASCII в шестнадцатеричный формат. Что-то вроде этого сделает это:
let message = "0100..."
let msgArr = message.split( "" )
let convertedMessage = ""
for ( let index in msgArr )
{
convertedMessage += String.fromCharCode( msgArr[ index ]).toString( 16 )
}
// use convertedMessage to send your request
person
Charles Campbell
schedule
15.08.2019