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.
Menyambung ke API UP Jawbone dengan Node.js
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
- Gunakan API Jawbone UP untuk mengakses data pengguna yang luas seperti jumlah langkah dan tabiat tidur menggunakan node.js, tanpa kerumitan pengendalian penyimpanan data pengguna atau pengurusan akaun.
- Mulailah dengan menubuhkan aplikasi Jawbone di tapak pemaju Jawbone untuk mendapatkan kelayakan yang diperlukan seperti ID Pelanggan dan Rahsia App, yang penting untuk integrasi API.
- Melaksanakan modul pasport dengan OAuth 2.0 dalam node.js untuk mengendalikan pengesahan pengguna dan pengambilan data dengan selamat.
- Pastikan semua komunikasi dengan API Jawbone UP dijalankan melalui HTTPS untuk memenuhi protokol keselamatan dan mengelakkan pemintasan data.
- Gunakan templat EJS dalam node.js untuk memaparkan data tidur yang diambil secara dinamik dari API Jawbone UP pada aplikasi web anda.
- meneroka potensi untuk memperluaskan aplikasi dengan mengintegrasikan lebih banyak jenis data dari API Jawbone UP dan mungkin menggabungkan dengan API lain untuk fungsi yang dipertingkatkan.
- Menyediakan aplikasi Jawbone
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".

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

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:

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>
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>
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>
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>
kami juga memerlukan badan-badan untuk membolehkan kami mengendalikan permintaan JSON:
bodyParser <span>= require('body-parser'),</span>
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>
Kami kemudian mendapat pemboleh ubah penjelasan diri yang menyimpan pelabuhan yang akan kami jalankan.
port <span>= 5000,</span>
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>
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>
- 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>
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>
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>
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>
Akhirnya untuk penghalaan kami, kami menetapkannya untuk memuatkan templat indeks.ejs kami jika seseorang cuba mengakses laman web:
fs <span>= require('fs'),</span>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
aplikasi kami dalam tindakan
Untuk mendapatkan aplikasi berjalan, pergi ke terminal anda dan jalankan:
port <span>= 5000,</span>
dengan berjalan, pergi ke http: // localhost: 5000 dan anda akan melihat halaman awal kami:
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":
Apabila kita mengklik setuju, kita harus diarahkan kembali ke halaman http: // localhost: 5000/sleepdata dengan jadual data tidur kita dikembalikan:
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek dalam JavaScript? Semasa memproses data, kita sering menghadapi keperluan untuk mempunyai id yang sama ...

Pembelajaran JavaScript tidak sukar, tetapi ia mencabar. 1) Memahami konsep asas seperti pembolehubah, jenis data, fungsi, dan sebagainya. 2) Pengaturcaraan asynchronous tuan dan melaksanakannya melalui gelung acara. 3) Gunakan operasi DOM dan berjanji untuk mengendalikan permintaan tak segerak. 4) Elakkan kesilapan biasa dan gunakan teknik debugging. 5) Mengoptimumkan prestasi dan mengikuti amalan terbaik.

Perbincangan mengenai realisasi kesan animasi tatal dan elemen Parallax dalam artikel ini akan meneroka bagaimana untuk mencapai yang serupa dengan laman web rasmi Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ... ...

Trend terkini dalam JavaScript termasuk kebangkitan TypeScript, populariti kerangka dan perpustakaan moden, dan penerapan webassembly. Prospek masa depan meliputi sistem jenis yang lebih berkuasa, pembangunan JavaScript, pengembangan kecerdasan buatan dan pembelajaran mesin, dan potensi pengkomputeran IoT dan kelebihan.

Perbincangan mendalam mengenai punca-punca utama perbezaan dalam output konsol.log. Artikel ini akan menganalisis perbezaan hasil output fungsi Console.log dalam sekeping kod dan menerangkan sebab -sebab di belakangnya. � ...
