Voit määrittää tilauksia Pay.sh:n kautta asentamalla Pay-asiakkaan laitteellesi tai määrittämällä Pay-palvelimen. Asenna Pay komennolla:
brew install pay
tai
npm install -g @solana/pay
Tarkista asennus komennolla:
pay --version
Työkaluketju määrittää osoitteesi automaattisesti. Suorita seuraava komento lompakkosi asettamiseksi ja lataamiseksi:
pay setup
Tilaukset asiakkaana
Käyttäjät tilaavat tilaussuojattuja API-päätepisteitä kutsumalla pay-komentoa
normaalisti. API:n vastuulla on lähettää tilaustiedot alkuperäisessä
402 Status -vastauksessa. Pay käsittelee tilauksen automaattisesti, mukaan
lukien kutsujen suorittamisen Solana SPL Subscriptions -ohjelmassa.
Käyttäjät voivat hallita tilauksiaan seuraavilla komennoilla:
pay subscriptions # default: list + show available subcommandspay subscriptions list # same, scriptablepay subscriptions list --network mainnetpay subscriptions list --json
Voit lukea lisää tilausten hallinnasta käyttäjänä Pay.sh > Using Pay > Manage Subscriptions -dokumentaatiosta.
Tilausten hallinta palveluntarjoajana (demo)
Pay-palvelimet mahdollistavat tilaajien ja heidän tilauksiensa määrittämisen kullekin päätepisteelle. Seuraava on esimerkki päätepisteestä, joka käyttää pay-komentoa ja jota voit kokeilla projektissasi:
# monthly.ymlname: Subscriptions Examplesubdomain: subscriptions-exampletitle: "Subscription Example"description: "Demo Subscriptions"category: ai_mlversion: v1routing:type: respondoperator:currencies:usd: ["USDC", "USDT", "CASH"]network: "localnet"fee_payer: truechallenge_binding_secret: d858d9104afd728f58a1f73d806dd75d8f32ebd37c9707145816b490e8631d41# insert your own challenge_binding_secret here. use `openssl rand -hex 32`endpoints:- method: GETpath: "api/v1/pro/feed"resource: "pro-feed"description: "Pro feed — monthly subscription, 30-day billing period."subscription:period: "30d"price_usd: 9.99currency: USDCplan_id_numeric: 1
Pay hallitsee tilauksia käyttämällä subscription:-attribuuttia endpoints
YAML-määrittelyssään. Tämä eroaa metering:-attribuutista, jota käytetään
käyttöperusteisissa päätepisteissä.
Yllä olevan esimerkin palvelimen käynnistäminen luo päätepisteen nimeltä
api/v1/pro/feed, joka vaatii käyttäjää suorittamaan toistuvan maksun 9,99 USDC
joka 30. päivä.
Voit kokeilla sitä suorittamalla seuraavan komennon:
pay server start monthly.yml
Tämän komennon suorittaminen kehottaa sinua luomaan suunnitelman. Tämä luo suunnitelman ja päivittää yml-tiedoston. Jos aiot käyttää sitä uudelleen, muista suunnitelman osoite ja käytä sitä konfiguraatiossasi tehdessäsi muutoksia.
Voit testata tilausten toimivuuden suorittamalla seuraavat komennot asiakkaana toisessa päätteessä:
# First call — activates the subscription, $9.99 USDC charge settles.pay --sandbox curl http://127.0.0.1:1402/api/v1/pro/feed# Same call within 30 days — no payment prompt, just the response.pay --sandbox curl http://127.0.0.1:1402/api/v1/pro/feed
Vastauksena pitäisi näkyä OK-tila seuraavasti:
{ "status": "ok" }
Voit oppia lisää tilausten hallinnasta Pay-palvelimella Pay.sh > Building with Pay > Subscriptions > YAML Specification docs -dokumentaation kautta.
Is this page helpful?