Как изменить файл Razorpay.js, чтобы мой код работал? - PullRequest
0 голосов
/ 20 мая 2018

Я интегрирую Razorpay для обработки платежей и использую нод-JS SDK.

См. Эту ссылку для справки: https://github.com/razorpay/razorpay-node/blob/master/examples/index.js.

Теперь я пытаюсьполучить платеж, который был авторизован с использованием моих облачных функций firebase.Обратитесь к строке 32 в ссылке, которой я поделился выше.

Позвольте мне показать вам облачную функцию, которую я написал:

exports.CapturePayment = functions.database.ref('payment_id').onWrite((event) => {

  const payment_id = event.data.val();

  // Capture a particular payment
rzp.payments.capture(payment_id, 1000).then((data) => {
  event.data.ref.child('status').set("paid");
  // success
}).catch((error) => {
  // error
});

});

Когда я ее запускаю, я получаю эту ошибку:

https://imgur.com/a/h2iG2uf

Я приложил скриншоты как моего файла razorpay.js, так и файла index.js.Может кто-нибудь указать на мою ошибку и помочь мне заставить ее работать?

razorpay.js: https://imgur.com/GU0LP1u index.js: https://imgur.com/a/TYizcSu

PS: я очень плохо знаком сNode.JS, так что я думаю, что это может быть синтаксической ошибкой.

Обновление 1: я изменил объявление переменной среды на `

let rzp = new Razorpay({
  key_id: process.env.KEY_ID || "rzp_test_T1334114312"  , // your `KEY_ID`
  key_secret: process.env.KEY_SECRET || "K7W234fdsCt4dE12341" // your `KEY_SECRET`
})`

, и я все еще получаю ту же ошибку.

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Оказывается, это была простая синтаксическая ошибка при объявлении переменных среды.Мне просто нужно было объявить это следующим образом:

process.env.KEY_ID = 'randomstring1';process.env.KEY_SECRET = 'randomstring2';

и все работает!

0 голосов
/ 20 мая 2018

Вам нужно инициализировать RazorPay SDK с key_id и key_secret.Вы можете либо установить переменную среды, либо напрямую передать значения, как показано ниже.

process.env - это переменные среды, которые необходимо настроить.Вы не просто заменяете их в коде (который я видел на скриншоте).

let rzp = new Razorpay({
  key_id: process.env.KEY_ID || "<your actual key id>", 
  key_secret: process.env.KEY_SECRET || "<your actual key secret>" 
})

Вот почему выдается ошибка, что key_id отсутствует.

...