2016-12-11 4 views
1

Я новичок в React Native and Stripe API и пытаюсь интегрировать два для моего платежного модуля. Поэтому изначально, когда я использовал код в качестве описаний node.js, я получаю сообщение об ошибке из-за HTTP-модуля, который недоступен в React Native.Реагирование Интеграция с коренными и полосами 401 Ошибка

Пока я не столкнулся с этим блогом, описывающим обходной путь с использованием API-интерфейса Fetch вместо обычной реализации Stripe. Но когда я запускаю свой код, я получаю ошибку 401, которая означает «Несанкционированный» или ключ недействителен. Учитывая, что моя реализация и ключ верны, что может вызвать эту ошибку? Вот пример кода:

fetch('https://api.stripe.com/v1/customers', { 
    method: 'post', 
    headers: { 
    'Accept': 'application/json', 
    'Authorization': 'Bearer MY_TEST_KEY' 
    }, 
    body: JSON.stringify({ 
    firstName: 'John', 
    lastName: 'Doe' 
    }) 
}) 

Заранее благодарен!

ответ

1

К сожалению, это не возможно сделать в мобильном приложении, так как для этих вызовов требуется секретный ключ API. Вы никогда не должны иметь секретный ключ API в своем мобильном приложении, иначе злоумышленник может его взять в свои руки, а затем создавать сборы, возмещения или переводы от вашего имени.

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

+0

На самом деле я просто тестирую API, позже я это сделаю, но сейчас я хотел бы сначала увидеть, как это работает, поэтому я помещаю свой секретный ключ в код или тот, который вызывает Несанкционированная ошибка? – Jed

+0

@Jed: Я хочу сказать, что вы не можете получить библиотеку Stripe-node в своем приложении и даже не пытаетесь попробовать. Вместо этого вам нужно использовать Stripe.js в webview: https://stripe.com/docs/stripe.js – koopajah

 Смежные вопросы

  • Нет связанных вопросов^_^