Rumah > hujung hadapan web > tutorial js > Menyambung ke API UP Jawbone dengan Node.js

Menyambung ke API UP Jawbone dengan Node.js

Christopher Nolan
Lepaskan: 2025-02-20 13:16:09
asal
894 orang telah melayarinya

Menyambung ke API UP Jawbone dengan Node.js

Sebagai pemaju, saya tidak dapat membantu tetapi ingin mengakses jumlah kiraan langkah yang besar dan data kebiasaan tidur yang saya lakukan pada saya. Terdapat banyak data! Oleh itu, saya mula melihat bagaimana untuk menarik data ini menggunakan API dan Node Jawbone Up.

Saya dapati contoh bagaimana untuk bekerja dengan API UP API dan nod di seluruh web tetapi mereka semua terlibat dan mempunyai banyak bahagian yang bergerak, bersama dengan beberapa modul yang sudah lapuk (seperti versi lama Express). Dalam artikel ini saya ingin memberi tumpuan kepada asas -asas mutlak -tidak bimbang tentang menyimpan data pengguna ke dalam pangkalan data, membuat akaun atau menyambungkan log masuk sosial. Kami akan memberi tumpuan kepada perkara -perkara teras yang perlu anda ketahui untuk mendapatkan pelayan nod untuk mengesahkan dengan API Jawbone dan mengembalikan data pengguna.

Semua kod untuk demo ini boleh didapati di repo GitHub kami.

Takeaways Key

Perkara pertama yang kami perlukan adalah aplikasi Jawbone baru yang ditubuhkan di bawah akaun Jawbone kami. Ini adalah aplikasi yang pengguna akan memberi kuasa untuk mengakses data mereka.

Mulailah dengan log masuk ke bahagian pemaju tapak Jawbone dengan pergi ke https://jawbone.com/up/developer dan klik pautan "Log masuk" di sebelah kiri bawah. Anda tidak akan memerlukan akaun pemaju Jawbone tertentu kerana mereka akan membolehkan anda log masuk menggunakan akaun Jawbone yang sedia ada.

Setelah log masuk, pergi ke https://jawbone.com/up/developer/account, atau klik pautan "Urus Akaun" di menu kiri di bawah "Akaun". Menyambung ke API UP Jawbone dengan Node.js

Pada halaman ini, anda akan sampai ke halaman akaun pemaju anda. Dari sini, klik "Buat App".

Menyambung ke API UP Jawbone dengan Node.js

pada halaman yang dimuatkan, anda akan diminta untuk memasukkan butiran aplikasi anda:

  • Nama - Nama permohonan anda, saya memasuki "Jawbone Up Node Demo".
  • Penerangan - Ini adalah penerangan ringkas yang akan muncul di galeri aplikasi UP pengguna.
  • Penerangan panjang - Ini muncul pada halaman terperinci aplikasi di galeri aplikasi.
  • Logo - Muat naik logo untuk permohonan anda. Jika anda menerima ralat mengenai "pilih" (pelik saya tahu, tetapi ia akan masuk akal kepada beberapa orang yang mengikuti dan mendapatkan mesej itu), kemungkinan imej logo anda terlalu besar.
  • URL - Laman Utama Aplikasi Anda
  • URL Kebenaran - URL yang halaman log masuk anda akan ditemui di. Untuk tujuan ujian kami, masukkan https: // localhost: 5000/login/jawbone.
  • oAuth Redirect uris - URL bahawa permohonan anda dibenarkan untuk mengarahkan ke sekali pengguna telah disahkan. Dalam demo kami, kami akan memasuki https: // localhost: 5000.

Sebaik sahaja anda mengklik untuk membuat aplikasi, anda akan diarahkan ke halaman dengan senarai aplikasi anda. Aplikasi yang baru dibuat anda sepatutnya kelihatan serupa dengan saya:

Menyambung ke API UP Jawbone dengan Node.js

Ambil perhatian "ID Pelanggan" dan "Rahsia App" - ini adalah apa yang anda perlukan untuk menyambung ke API Jawbone.

Memulakan aplikasi nod kami

Saya akan memasukkan semua kod pelayan nod kami dalam satu fail yang dipanggil server.js. Kami mulakan dengan memerlukan modul NPM yang diperlukan untuk pelayan kami.

Pertama, kami menyediakan aplikasi Express asas.

<span>var express = require(‘express’),
</span>    app <span>= express(),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kami kemudian memerlukan EJS (JavaScript tertanam), yang membolehkan kami memasukkan JavaScript ke dalam templat HTML kami. Kami akan menggunakan ini untuk memaparkan pembolehubah JavaScript dalam HTML kami yang dikembalikan.

ejs <span>= require('ejs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Untuk dapat mengesahkan dengan API Jawbone dan mengalihkan kembali ke permohonan kami, Jawbone memerlukan kami mengarahkan ke halaman melalui HTTPS. Untuk melakukan ini, kita perlu memasukkan https.

https <span>= require('https'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seterusnya, kami termasuk FS, yang membolehkan kami membaca sistem fail. Kami memerlukan ini untuk dibaca dalam fail sijil pelayan untuk membolehkan HTTPS.

fs <span>= require('fs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

kami juga memerlukan badan-badan untuk membolehkan kami mengendalikan permintaan JSON:

bodyParser <span>= require('body-parser'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

API Jawbone UP menggunakan protokol OAuth 2.0 untuk pengesahan. Pada asasnya, ini bermakna untuk mempunyai pengguna log masuk dengan akaun Jawbone mereka dan memberi kami kebenaran untuk mengakses data mereka, kami perlu melalui protokol ini. Nasib baik, modul pasport NPM mengandungi modul yang dipanggil Pasport-OAuth yang menyokong ini. Kami menyediakan pasport dalam aplikasi kami bersama -sama dengan OAuth 2.0 seperti SO:

passport <span>= require('passport'),
</span><span>JawboneStrategy = require('passport-oauth').<span>OAuth2Strategy</span>,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kami kemudian mendapat pemboleh ubah penjelasan diri yang menyimpan pelabuhan yang akan kami jalankan.

port <span>= 5000,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seterusnya, kami akan menyimpan semua nilai yang diperlukan untuk pengesahan dalam Pasport dan OAuth 2.0 di dalam JawboneAuth. Inilah saat anda akan menggunakan nilai "ID Pelanggan" dan "Rahsia App" yang kami ambil perhatian sebelum ini apabila kami mendaftarkan aplikasi kami.

<span>var express = require(‘express’),
</span>    app <span>= express(),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Berikut adalah gambaran keseluruhan tentang nilai -nilai ini dan/atau di mana mereka datang dari:

  • ClientID - Ini adalah "ID Pelanggan" yang disenaraikan untuk aplikasi Jawbone anda.
  • ClientSecret - Ini adalah nilai "Rahsia App" di bawahnya.
  • kebenaran - ini adalah lokasi halaman pengesahan OAuth 2.0 yang pengguna akan diarahkan ke.
  • Tokenurl - Ini adalah URL dalam API UP API yang kita mesti membuat panggilan HTTPS, untuk meminta token akses. Token ini adalah apa yang perlu kita sertakan dalam panggilan kami ke API Jawbone Up untuk membuktikan kami diberi kuasa untuk membuat permintaan tersebut untuk data. Dalam API UP Jawbone, token ini berlangsung selama setahun, jadi anda boleh menyimpannya dalam pangkalan data dan mempunyai pengguna yang disambungkan ke akaun Jawbone mereka selama setahun sebelum perlu mengesahkannya semula. Kami tidak akan melihat penyimpanan pengguna dan sebagainya dalam tutorial ini, tetapi adalah baik untuk diingat jika anda ingin menolaknya lagi.
  • callbackurl - URL di laman web kami yang Jawbone akan mengarahkan pengguna kembali ke apabila mereka berjaya memberikan kami akses kepada data mereka. Bagi kami ia adalah halaman untuk memaparkan data tidur.

Pembolehubah terakhir yang perlu kita tentukan adalah SSLOptions kami yang mengandungi semua butiran yang perlu kami berikan kepada pelayan kami untuk membolehkan kami menjalankan pelayan ini menggunakan HTTPS. Saya akan pergi ke setiap ini secara terperinci dalam artikel ini apabila menjelaskan bagaimana kami menubuhkan HTTPS.

Kami kemudian memasukkan beberapa baris yang menentukan beberapa fungsi aplikasi nod asas yang akan menjadi biasa kepada pemaju nod di luar sana:

ejs <span>= require('ejs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
  • bodyparser - membolehkan kita menghuraikan objek JSON.
  • Folder Statik - Menentukan di mana fail statik kami seperti imej akan berada di pelayan (dalam kes kami, /folder awam).
  • EJS - Menetapkan modul EJS sebagai enjin templat kami.
  • Folder Views - Tentukan di mana fail paparan EJS kami akan berada di pelayan (dalam kes kami, folder /paparan).

Untuk memulakan pasport dalam Express, kami menjalankan baris berikut:

https <span>= require('https'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Sebagai nota, terdapat lebih banyak lagi yang ditubuhkan dalam pasport jika kita mahu mengadakan sesi log masuk yang berterusan. Dalam kes ini, kita perlu menubuhkan sesi. Walau bagaimanapun, untuk tutorial ini, kami hanya akan memberi tumpuan kepada peringkat awal untuk mendapatkan data dari API Jawbone Up dan tidak akan bimbang tentang sesi log masuk.

menyediakan permintaan kami

Untuk mengarahkan pengguna ke skrin log masuk untuk API Jawbone UP, kami perlu menetapkan URL pada pelayan kami yang akan diarahkan ke skrin log masuk Jawbone. Kod di bawah memberikan URL /login /tulang rahang untuk tujuan ini. Atas permintaan untuk URL ini, kami memanggil pasport.uthorize () untuk memaparkan halaman kebenaran rahang kami:

<span>var express = require(‘express’),
</span>    app <span>= express(),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda lihat di atas, kami mempunyai pelbagai kebenaran khusus yang kami minta - ['Basic_read', 'Sleep_read']. Dalam kes kami, kami meminta data pengguna asas dan data tidur. Jika anda ingin meminta akses kepada kiraan langkah, makanan yang dimakan dan sebagainya, anda boleh menambah permintaan kebenaran tambahan ke array tersebut. Anda dapat melihat senarai apa yang ada dan apa yang mereka berikan akses ke halaman dokumentasi pengesahan pemaju Jawbone Up.

Juga ambil perhatian, jika terdapat kegagalan dalam mengesahkan dalam skrin pengesahan Jawbone Up, ia akan mengarahkan kami kembali ke laman utama. Ia mungkin dalam modul pasport untuk menetapkan SuccessRedirect juga, namun saya dapati dengan API Jawbone UP, ia tidak diperlukan kerana kami akan menentukan URL panggil balik kami di jawbonestratgy lebih jauh dalam kod ini.

Kami kemudian menyediakan permintaan GET bahawa data tidur kami akan muncul. Ini adalah lokasi yang akan kami beritahu API untuk mengarahkan kami apabila kami mendapat akses kepada data pengguna. Dalam contoh ini, ia adalah /SleepData:

ejs <span>= require('ejs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kami mempunyai pasport yang sama. Berkesan () fungsi di sini, hanya untuk memeriksa bahawa pengguna dilog masuk pada masa mereka mencapai halaman ini. Jika ya, kami menjalankan res.render ('userData', req.account); yang berlalu dalam data bahawa API Jawbone UP kembali ke template userdata.ejs (yang akan kami sediakan tidak lama lagi). Jika mereka tidak dilog masuk, mereka akan diarahkan kembali ke skrin pengesahan Jawbone Up.

Kami kemudian menetapkan URL untuk membolehkan pengguna logout di /logout, yang mengalihkan pengguna kembali ke laman utama sekali log keluar:

https <span>= require('https'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Akhirnya untuk penghalaan kami, kami menetapkannya untuk memuatkan templat indeks.ejs kami jika seseorang cuba mengakses laman web:

fs <span>= require('fs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

menggunakan pasport untuk menyambung ke API Jawbone Up

Kod terbesar terbesar juga yang paling penting - menubuhkan "strategi" pasport untuk memberitahu pasport bagaimana menangani permintaan untuk memberi kuasa menggunakan 'Jawbone'. Nampaknya ini:

bodyParser <span>= require('body-parser'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

mari kita pergi ke atas apa yang dilakukan oleh semua kod ini.

Pertama, kami menubuhkan ClientID, ClientSecret, AuthorizationUrl, Tokenurl dan Callbackurl dari objek JawboneAuth kami yang kami tentukan pada permulaan fail. Ini dilakukan dengan menggunakan jawbonestraty baru ().

Seterusnya kami mempunyai fungsi panggil balik kami yang mengendalikan data ini. Kami menggunakan nilai token dan dilakukan dalam fungsi panggil balik ini. Token adalah token akses API Jawbone UP yang kita perlukan untuk memasukkan apa -apa panggilan ke API untuk membuktikan kami disahkan. Selesai adalah fungsi panggil balik yang mengembalikan data kami ke aplikasinya.

Kami lulus token akses, bersama dengan ID pelanggan dan rahsia yang ditakrifkan sebelum ini, ke dalam modul tulang rahang dalam objek pilihan:

<span>var express = require(‘express’),
</span>    app <span>= express(),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Modul Jawbone-Up adalah modul nod yang memberi kita akses kepada titik akhir API UP API. Ini adalah panggilan yang kami buat ke API untuk mengembalikan data pengguna (mis. Ini dalam fungsi seperti up.moves.get () dan up.sleeps.get (). Dalam contoh kami, kami akan menggunakan up.sleeps.get () untuk mendapatkan data tidur.

dalam up.sleeps.get () kami mempunyai dua pembolehubah, kesilapan dan badan. Sekiranya terdapat kesilapan dalam menerima data dari API, ia akan dikembalikan dalam pembolehubah Err supaya kami menguji untuk itu pada permulaan panggilan balik kami.

Jika tidak, kami mendapat data kami kembali dalam rentetan JSON dalam pemboleh ubah badan. Pembolehubah badan akan mengandungi rentetan nilai JSON yang akan kelihatan seperti:

ejs <span>= require('ejs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Semua yang kita mahukan adalah dalam data. Kami menghuraikan nilai di atas ke dalam objek JavaScript menggunakan json.parse (badan) dan menetapkan nilai dalam kekunci data kepada pembolehubah yang dipanggil jawbonedata:

https <span>= require('https'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kemudian, kami mempunyai gelung yang melalui setiap item dalam array dalam data dan format tarikh kami dan masa tidur sebelum mengembalikannya ke templat kami untuk dipaparkan.

fs <span>= require('fs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

di sini, kita baca pada tarikh, tukar ke rentetan dan kemudian hirus hari, bulan dan tahun diri kita. Ia dikembalikan sebagai nilai 20150408, jadi kami menghirup empat digit pertama sebagai tahun, kedua selepas itu sebagai bulan dan dua yang terakhir sebagai hari. Kami kemudian mengaturnya supaya ia akan menjadi DD/mm/yyyy, jika anda lebih suka memformatnya dalam format tarikh AS, anda boleh menukar bulan dan hari:

bodyParser <span>= require('body-parser'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

API Jawbone mengembalikan nilai tempoh tidur yang agak baik sebagai tajuk yang kelihatan seperti ini: "untuk 9h 43m". Kita boleh menggunakan ini tetapi keluarkan bahagian "untuk" seperti:

passport <span>= require('passport'),
</span><span>JawboneStrategy = require('passport-oauth').<span>OAuth2Strategy</span>,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Kami kemudian mengembalikan data tersebut ke fungsi panggil balik pasport kami yang akan menjadikan userdata.ejs kami. Untuk berbuat demikian, kami mengembalikan pembolehubah Jawbonedata kami kepada fungsi yang dilakukan. Terdapat juga konsol.log supaya kita dapat melihat di dalam log apabila data Jawbone Up telah dihantar untuk dipaparkan:

port <span>= 5000,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

menggunakan https

Seperti yang saya nyatakan sebelum ini, untuk menggunakan API Jawbone UP, kita perlu menjalankan pelayan kami dengan HTTPS, kerana perkhidmatan Jawbone memerlukan kedua -dua belah pihak untuk menjalankan HTTPS. Jika callbackurl tidak ditetapkan ke HTTPS, anda akan menerima kesilapan "Redirect tidak sah" apabila anda cuba log masuk.

Untuk mendapatkan contoh kami berfungsi, kami akan menggunakan sijil yang ditandatangani sendiri. Jika anda melakukan ini di tapak langsung, anda akan ingin mendapatkan sijil yang betul dari pihak berkuasa sijil yang sah.

Dalam server.js, kami telah menentukan dua pilihan SSL:

jawboneAuth <span>= {
</span>  <span>clientID: 'jUvu1_4u_mA',
</span>  <span>clientSecret: '8961265d16ac678948006c2944ed85dbeeaab547',
</span>  <span>authorizationURL: 'https://jawbone.com/auth/oauth2/auth',
</span>  <span>tokenURL: 'https://jawbone.com/auth/oauth2/token',
</span>  <span>callbackURL: 'https://localhost:5000/sleepdata'
</span><span>},</span>
Salin selepas log masuk

Ini adalah lokasi fail di pelayan kami dari dua fail berkaitan pengesahan kami:

  • kekunci - Ini adalah kunci peribadi untuk pelayan kami
  • cert - Ini adalah sijil diri kami yang ditandatangani

menghasilkan kunci peribadi untuk pelayan kami

Untuk menjana kunci peribadi kita perlu menggunakan OpenSSL Toolkit. Pengguna Mac OSX dan Linux sepatutnya mempunyai pra-pemasangan ini. Untuk pengguna Windows, anda boleh memasang Cygwin, cari "OpenSSL" di skrin "Pilih Pakej" dan pilih pakej yang muncul.

kita boleh menjana kunci peribadi dengan membuka terminal kami, menavigasi ke folder untuk pelayan kami dan menjalankan arahan berikut:

<span>var express = require(‘express’),
</span>    app <span>= express(),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Ini menghasilkan kunci pelayan peribadi yang sedia untuk digunakan disebut server.key.

menghasilkan permintaan menandatangani sijil (CSR)

kita perlu menjana CSR. Ini biasanya akan dihantar ke pihak berkuasa sijil tetapi dalam kes kami, kami akan menandatanganinya untuk tujuan ujian.

untuk menghasilkan CSR menggunakan kunci peribadi kami yang kami buat di atas, jalankan arahan berikut:

ejs <span>= require('ejs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

anda akan diberi senarai soalan untuk menjawab, jawabnya dan anda akan menerima CSR anda sebagai fail yang dipanggil server.csr.

menjana sijil yang ditandatangani menggunakan kekunci peribadi pelayan kami

Akhirnya, untuk menghasilkan sijil yang ditandatangani sendiri tanpa pihak berkuasa sijil, kami menjalankan perintah berikut untuk menghasilkan sijil yang akan sah selama satu tahun:

https <span>= require('https'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Perintah itu sepatutnya menghasilkan fail server.crt - ini adalah sijil anda.

Keluarkan permintaan sijil kami

Bagi mereka yang suka menyimpan perkara yang kemas dan menandatangani sijil mereka sendiri, kami boleh mengeluarkan server.csr sebagai sijil kami kini ditandatangani.

Kami https siap

Dengan kunci peribadi dan sijil kami siap dan ditakrifkan dalam fail nod kami, pelayan kami bersedia untuk dijalankan sebagai HTTPS. Kod berikut memulakan pelayan menggunakan HTTPS dan SSLOptions kami:

fs <span>= require('fs'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

fail EJS kami

HTML kami untuk aplikasi ini adalah semua fail .eJS supaya kami boleh memasukkan pembolehubah JavaScript di dalamnya apabila diperlukan. Fail -fail ini semuanya berada dalam /pandangan. index.ejs sangat mudah dan hanya mengandungi tajuk, arahan dan butang log masuk yang akan pergi ke /login /jawbone:

bodyParser <span>= require('body-parser'),</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

userdata.ejs adalah di mana tindakan itu. Bit utama yang boleh kami fokuskan ialah jadual kami:

passport <span>= require('passport'),
</span><span>JawboneStrategy = require('passport-oauth').<span>OAuth2Strategy</span>,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Bagi mereka yang baru untuk EJS, kami membenamkan JavaScript dalam tag . Kami lulus dalam item ke template UserData, yang kami lalui melalui menggunakan gelung seperti So: . Setiap tarikh dan tajuk kemudian dimasukkan ke dalam HTML kami menggunakan dan .

aplikasi kami dalam tindakan

Untuk mendapatkan aplikasi berjalan, pergi ke terminal anda dan jalankan:

port <span>= 5000,</span>
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

dengan berjalan, pergi ke http: // localhost: 5000 dan anda akan melihat halaman awal kami:
Menyambung ke API UP Jawbone dengan Node.js

Jika kita mengklik butang Login, kita akan dibawa ke http: // localhost: 5000/login/jawbone, yang akan mengarahkan kita ke halaman pengesahan Jawbone Up. Halaman ini akan mendorong kami untuk butiran log masuk rahang kami. Sebaik sahaja anda memasukkan butiran tersebut atau jika anda sudah log masuk ke tapak Jawbone, anda akan diarahkan ke halaman Auth yang meminta akses kepada data pengguna anda. Klik "Setuju":
Menyambung ke API UP Jawbone dengan Node.js

Apabila kita mengklik setuju, kita harus diarahkan kembali ke halaman http: // localhost: 5000/sleepdata dengan jadual data tidur kita dikembalikan:
Menyambung ke API UP Jawbone dengan Node.js

Dan jika kita mengklik butang "Log Out", ia harus log keluar dan mengalihkan kami kembali ke halaman utama.

Kesimpulan

yang melengkapkan gambaran keseluruhan kami mengenai asas -asas menyambung ke API Jawbone Up dan mengembalikan data ke pelayan nod.

Langkah -langkah seterusnya dari sini boleh termasuk menyediakan pangkalan data untuk menyimpan data untuk kegunaan masa depan, mewujudkan akaun pengguna untuk aplikasi anda, memperluaskan jumlah data yang anda tarik dari API UP, mengubah cara ia memaparkan (mungkin menambah beberapa Grafik cantik!) Dan banyak lagi. Menggabungkan data ini dengan sebilangan API lain di luar sana dan potensi untuk beberapa aplikasi yang benar -benar kemas adalah besar!

sumber berguna lain

  • Dokumentasi untuk modul node-jawbone-up
  • Dokumentasi Pemaju Jawbone
  • Dokumentasi untuk Pasport
  • demo up dan nod dengan akaun pengguna dan mongoDB

soalan yang sering ditanya mengenai menghubungkan API UP Jawbone dengan node.js

Apakah API Jawbone UP dan bagaimana ia berfungsi? Ia membolehkan pengekstrakan data dari platform Jawbone Up, yang termasuk aktiviti pengguna, tidur, makan, dan data yang berkaitan dengan kesihatan. API menggunakan panggilan dan respons RESTful diformatkan di JSON. Untuk terlebih dahulu mendaftarkan permohonan anda di laman pemaju Jawbone untuk mendapatkan ID pelanggan dan rahsia pelanggan anda. Kemudian, anda boleh menggunakan pakej NPM 'Jawbone-Up' dalam aplikasi Node.js anda. Pakej ini menyediakan cara mudah untuk mengesahkan dan membuat permintaan ke API Jawbone Up. Alternatif seperti Fitbit API, Google Fit API, atau Apple HealthKit. API ini juga menyediakan akses kepada data kesihatan dan kecergasan pengguna dan mempunyai dokumentasi yang luas untuk membantu pemaju.

Apa yang berlaku kepada Jawbone dan perkhidmatannya? Syarikat itu telah beralih ke perkhidmatan langganan perubatan yang dipanggil Jawbone Health Hub. Walau bagaimanapun, aplikasi Jawbone Up dan API tidak lagi disokong. Terdapat. Sebarang aplikasi menggunakan API ini tidak lagi berfungsi seperti yang diharapkan. Adalah disyorkan untuk beralih ke API alternatif untuk mengakses data kesihatan dan kecergasan.

Bagaimana saya boleh berhijrah dari API Jawbone Up ke Fitbit API? . Pertama, anda perlu mendaftarkan permohonan anda di laman pemaju Fitbit. Kemudian, anda boleh menggunakan API Fitbit untuk mengakses data kesihatan dan kecergasan pengguna. API Fitbit menyediakan fungsi yang sama kepada API Jawbone UP, termasuk akses kepada aktiviti, tidur, dan data makan. Node.js adalah runtime JavaScript yang dibina di atas enjin V8 JavaScript Chrome. Ia digunakan untuk membina aplikasi rangkaian berskala. Node.js tidak menyekat, yang menjadikannya cekap dan ringan, sesuai untuk aplikasi masa nyata intensif data. Ia biasanya digunakan untuk menyambung dengan API kerana kecekapan dan kemudahan penggunaannya. .js, anda boleh mengendalikan kesilapan menggunakan peristiwa 'ralat'. Acara ini dipancarkan apabila ralat berlaku semasa permintaan. Anda boleh mendengar peristiwa ini dan mengendalikan ralat dengan sewajarnya, seperti dengan log masuk kesilapan atau mencuba semula permintaan. Akses kepada pelbagai data kesihatan dan kecergasan. Ini termasuk data aktiviti (seperti langkah, jarak, dan kalori dibakar), data tidur (seperti tempoh tidur dan kualiti tidur), dan data makan (seperti pengambilan makanan dan maklumat pemakanan). Data tepat yang tersedia bergantung pada API tertentu dan keizinan yang diberikan oleh pengguna. API, penting untuk mengikuti amalan terbaik untuk privasi dan keselamatan data. Ini termasuk mendapatkan persetujuan pengguna sebelum mengakses data mereka, menggunakan Sambungan Secure (HTTPS) untuk semua permintaan, menyimpan data pengguna dengan selamat, dan hanya meminta jumlah minimum data yang diperlukan untuk aplikasi anda.

Atas ialah kandungan terperinci Menyambung ke API UP Jawbone dengan Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan