Funkcje serwerowe Post zapytania Firebase Reagują Na Działania Formy

0

Pytanie

Gdy naciskam przycisk na interfejsie mnie kierują na host lokalny/utwórz konto zamieszczone na hostingu, ale pojawia się "Nie można OPUBLIKOWAĆ". Listonosz, pokazuje jednak, że punkt końcowy działa dobrze.

Nie jestem pewien, co ja tu się pomylił.

Wewnętrzny punkt końcowy w folderze funkcji Firebase

app.post("/create-account-hosted", async (req, res) => {
  try {
  var account = await stripe.accounts.create({
    type: "custom",
    requested_capabilities: ["card_payments", "transfers"],
    business_type: 'company',
    
  })

  var accountLink = await stripe.accountLinks.create({
    account: account.id,
    success_url: "https://example.com",
    failure_url: "https://example.com",
    type: "custom_account_verification", 
    collect: "eventually_due",
  });
} catch (err) {
  console.log(err);
  res.status(400);
  res.send({ error: err });
  return;
}

res.send(accountLink.url)

Forma kodu pierwszego planu WYSYŁA żądanie przekierowania po stronie serwera.

<div className="beASeller">
                    <form
                        type="submit"
                        action="/create-account-hosted"
                        method="POST"
                        class="stripe-connect white"
                    >
                        <button> Seller Signup</button>
                    </form>
                </div>
2
1

Ponieważ mój listonosz chciał samą funkcję Firebase, np. https://uscentral1.myfunction.cloudfunctions.net/create-account-hostedpowinienem był zrobić to samo z moim kodem źródłowym.

<div className="beASeller">
         <button                        
         action="https://uscentral1.myfunction.cloudfunctions.net/create-account-hosted/"
         class="stripe-connect white"
         >
         </button>
</div>
2021-11-24 07:29:43
1

Można również korzystać z HTTP-klient. W tym przypadku będziemy używać Axios.

Istnieje wiele dodatkowych opcji, z których możesz skorzystać podczas składania wniosku za pomocą Axiosale oto najczęstsze z nich:

  • Podstawowy adres URL - jeśli podasz adres URL-adres, zostanie on dodany do dowolnego swojego względnego adresu URL.
  • nagłówki - obiekt par klucz/wartość, wysyłany jako nagłówki.
  • ustawienia - obiekt par klucz/wartość, która będzie serializowany i dodane do adresu URL w postaci ciągu znaków zapytania.
  • Typ odpowiedzi - Jeśli oczekujesz odpowiedzi w formacie innym niż JSON, możesz ustawić tę właściwość wartość ArrayBuffer, duży obiekt binarny, dokument, tekst lub strumień.
  • uwierzytelnianie: przy przekazywaniu obiektu z pola nazwy użytkownika i hasła te dane będą wykorzystywane do podstawowego uwierzytelniania HTTP, na życzenie.

Można odwołać się tu do ustawienia Axios w swoim projekcie.

Po zainstalowaniu teraz możesz korzystać z Axios. Proszę zobaczyć przykładowy kod poniżej:

import axios from 'axios';

axios.post('https://uscentral1.myfunction.cloudfunctions.net/create-account-hosted', {"body":data}, {
    headers: {
    'Content-Type': 'application/json'
    'Authorization': 'Bearer ' + token
    }
  }
)

Proszę również sprawdzić kroki 2-4 w tym temacie i zobacz, czy to pomoże również.

2021-11-24 10:14:31

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................