Cutiile de abonament sunt o afacere din ce în ce mai populară în aceste zile. Le puteți găsi pentru totdeauna, de la îngrijirea produselor până la gustări sănătoase, jocuri pentru copii și chiar înghețată. În acest tutorial, vă vom arăta cum să construiți rapid o aplicație web pentru a testa dacă puteți găsi primii 1.000 de clienți pentru ideea casei de abonament!
Aplicația noastră este inspirată de serviciul de abonament pentru cocktailuri Shaken și include următoarele caracteristici:
Acest tutorial vă va arăta cum să configurați un back-end cu funcții complete și cum să construiți un front-end AngularJS care să îl atașeze.
Codul de bază complet al front-end-ului poate fi găsit pe GitHub.
Cupon: Stamplay a oferit cititorilor Tuts + un cupon exclusiv de oferit 6 luni din planul plus gratuit (Valoare de 600 USD). Codul promoțional este CODETUTSPLUS și expiră la 10 octombrie. Înscrieți-vă acum gratuit pentru ao răscumpăra.
Stamplay este o platformă de dezvoltare bazată pe web care oferă dezvoltatorilor o modalitate incredibil de rapidă de a construi aplicații complet integrate. Stamplay se ocupă de dificultatea de a vorbi cu mai multe API-uri diferite, astfel încât să nu fie nevoie.
Stamplay este construit în jurul conceptului de componente; componentele reprezintă elementele de bază ale aplicației noastre. Putem vedea diferitele instrumente disponibile la noi Sarcini> Componente.
După ce v-ați conectat, sunteți întâmpinați cu acest tablou de bord simplu și elegant. Vom crea o aplicație aici. Denumiți-vă ce vreți, dar amintiți-vă că acest nume este ceea ce vom folosi pentru a identifica cererea noastră. Acest lucru va fi, de asemenea, utilizat ca URL pentru aplicația noastră atunci când este găzduit.
În cazul nostru, folosim "tutsplus", iar aplicația noastră va fi găzduită la adresa https://tutsplus.stamplayapp.com.
Acum, să începem configurarea back-end-ului.
Această aplicație va conține o autentificare Facebook. Vom putea interacționa cu API-ul Facebook și vom putea gestiona datele de conectare și înregistrare, toate fără un singur rând de cod. Deoarece vrem ca utilizatorii noștri să se înscrie cu Facebook, va trebui să ne îndreptăm spre pagina de dezvoltatori Facebook și să creăm o nouă aplicație pentru dezvoltatori.
Selectați website, și odată ce ați creat aplicația dvs., vom putea să luăm două lucruri de care avem nevoie de la Facebook pentru a se integra cu Stamplay:
Aceste două lucruri pot fi găsite sub Setări> De bază.
Acum, când avem App ID-ul și Secretul aplicațiilor, le putem conecta la Stamplay.
Întoarce-te la Stamplay și selectează Utilizatori din meniul principal și apoi Autentificare. Adăuga Facebook ca serviciu de înregistrare, copiați și lipiți ID-ul aplicației și secretul aplicației și faceți clic pe Salvați.
Acum puteți înregistra utilizatorii prin Facebook!
Acum, când ne-am conectat la acreditările Facebook, Stamplay oferă o adresă URL convenabilă API pentru a gestiona conectarea cu Facebook. Hai să mergem acolo și să vedem datele de conectare Facebook în acțiune.
Accesați https://tutsplus.stamplayapp.com/auth/v1/facebook/connect.
Și boom! Aveți login-ul dvs. Facebook în funcțiune.
Nu totul poate fi manipulat cu componente, așa că Stamplay ne oferă o modalitate ușoară de a gestiona datele personalizate. Gândiți-vă la acest lucru ca la interfața bazei de date back-end pentru aplicația dvs..
Comenzile vor fi urmărite cu un Obiect numit Comenzi
. Are următoarele cinci proprietăți:
Stamplay va expune imediat API-urile RESTful de îndată ce creați obiectul. Punctul final va arăta astfel: https://APPID.stamplayapp.com/api/cobject/v1/orders.
Va trebui să ne facturați clienții periodic, și, din fericire, acest lucru este ușor de făcut cu Stripe! Prelucrarea sa periodică de plată este implementată în cadrul conceptului Planului. Planurile Stripe sunt obiecte care reprezintă ciclul de cost și de facturare al abonamentelor dvs..
Pentru a configura acest lucru, va trebui să vă creați planul în Consola consola> Planuri:
După ce ați terminat, reveniți la Stamplay și conectați componenta Stripe Sarcină> Componente. Selectează Dunga modul și faceți clic pe Conectați buton.
Acum contul Stripe va fi legat de aplicația Stamplay, care poate executa cereri API în numele nostru.
După o conexiune Stripe de succes, veți ajunge la o vizualizare ca aceasta.
Pentru a configura MailChimp, procesul este destul de similar; pur și simplu conectați contul dvs. MailChimp așa cum ați făcut anterior cu Stripe și veți vedea o pagină ca aceasta:
Aceasta este partea de server a aplicației noastre, unde se petrece cea mai mare parte a magiei! Să spunem că vrem să facem câteva lucruri:
Aceste două lucruri ar necesita în mod normal o bucată de cod, dar nu cu Stamplay ...
Un expert vă va îndruma prin configurația sarcinii. Sub Sarcini> Gestionați, creați o nouă sarcină și configurați-o așa cum doriți. Iată cum am creat sarcina de e-mail de bun venit:
Apoi puteți configura acțiunea prin folosirea variabilelor care ies din declanșator (în acest caz, utilizatorul). Iată cum ne-am configurat a noastră:
Apăsarea e-mailurilor utilizatorilor în lista dvs. de corespondență pe MailChimp este simplă.
Sub Sarcini> Gestionați, creați o nouă sarcină și configurați-o așa cum doriți. Iată cum am creat sarcina de abonare MailChimp.
Pentru a începe să lucrăm la partea din față, va trebui să folosim instrumentul Stamplay CLI.
Acest instrument ne va da posibilitatea de a lucra cu aplicatiile noastre Stamplay. Ne permite să:
$ npm instalare -g stamplay-cli
Să creăm un nou dosar și să inițializăm aplicația Stamplay în dosarul respectiv.
$ mkdir tutsplus și& cd tutsplus $ stamplay init
Veți fi invitat să introduceți datele dvs. APPID
(numele aplicației dvs.) și al dvs. apiKey
. În acest caz, sunt tutsplus
și 4 **** 0
respectiv.
Acest lucru va crea un fișier stamplay.json în rădăcina aplicației dvs., astfel încât atunci când se implementează, Stamplay va cunoaște acreditările dvs..
"appld": "tutsplus", "apiKey": "4e **** 0", "public": " "** / node_modules / **"]
Pentru a atinge terenul care rulează cu un design bun, am pornit de la unul dintre cele mai multe șabloane gratuite HTML5 gratuite, alimentate de Template.co. Cel pe care l-am folosit se numește Retrospect.
Să o descărcăm și să o dezarhivăm în dosarul nostru de proiect. Apoi să instalăm câteva biblioteci suplimentare utilizând Bower. Rulați următoarea comandă și vom fi bine să mergeți:
$ bower instalează unghiular unghiular-ui-router unghiular-stamplay stamplay-sdk unghi-rută - salvează
Pentru a folosi Stamplay cu Angular, va trebui:
Iată liniile necesare pentru a face toate acestea. Le vom adăuga sub eticheta fișierului nostru index.html:
... ...
Asigurați-vă că ați tastat-vă propriul APPID
în funcția Stamplay.init. Acum putem începe serverul nostru local pentru a ne asigura că totul se încarcă corect. Rulați următoarele:
stamplay start
Veți vedea că aplicația dvs. este gata să meargă la http: // localhost: 8080.
Vom crea câteva fișiere pentru aplicația noastră Angular:
Cele două fișiere de servicii vor utiliza bibliotecile Stamplay SDK și unghiular-stamplay pentru a ajuta aplicația noastră să interacționeze cu datele Stamplay.
Cel mai important este userService.js. Are câteva funcții și ne ajută să preluăm datele sau să creăm date. Pentru o privire mai aprofundată asupra a ceea ce este capabil de SDK Stamplay, asigurați-vă că verificați documentația.
UserService.js utilizează SDK Stamplay JS pentru a furniza aplicației noastre Angulare următoarele funcționalități:
/ * globală unghiulară, Stripe, consolă * / 'utilizare strictă'; ($ q, $ stamplay) var user = $ stamplay.User () Modelul; returnare ('tutsplus.service'). login: function () retur user.login ('facebook');, logout: function () return user.logout ();, isLogged: functie () return user.isLogged : funcția (adresa, orașul, codul poștal) // Salvați informația adresei utilizatorului, getUserModel: funcția () // Obțineți informațiile despre utilizator, creaCard: funcția (cardObj) // Colectați informații despre cartea de credit și stocați-o prin Stripe , abonați: funcția (planId) // Abonare utilizator, dezabonare: funcție (planId) // Anulați abonamentul utilizatorului;]);
Cererea noastră va avea trei pagini:
Aceste pagini sunt gestionate de trei controlori (conform celor sugerate de cele mai bune practici), care sunt homeCtrl.js, subscriptionCtrl.js și profileCtrl.js.
Șabloanele de pagini și controlorii sunt legate între ele de aplicația principală Angular.
Iată fundația aplicației noastre:
/ * globală unghiulară * / "utilizarea strictă"; angular.module ("tutsplus", ['tutsplus.service', 'ngRoute', 'ui.router', 'ngStamplay')]; unghiular .module ("tutsplus") .config (functie ($ stateProvider, $ urlRouterProvider) $ urlRouterProvider.otherwise ('/'); $ stateProvider. pagini / home.html ", controler: 'homeCtrl', controllerAs: 'home') .state ('subscriptions', url: '/ subscriptions', templateUrl: '/pages/subscriptions.html', controller: 'subscriptionCtrl "," controlerAs: 'sub') .state ('profil', url: '/ profile', templateUrl: '/pages/profile.html', controller: 'profileCtrl' ) / * * Salvați utilizatorul logat, dacă este prezent, în rootScope * / .run (['rootScope', 'userService', funcția ($ rootScope, userService) userService.getUserModel $ rootScope.user = userResp;);]);
Acum, trebuie doar să încărcăm noile noastre fișiere în index.html sub bibliotecile pe care le-am adăugat mai devreme.
... capul fișierului index.html ...