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>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>
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!

JavaScript digunakan secara meluas di laman web, aplikasi mudah alih, aplikasi desktop dan pengaturcaraan sisi pelayan. 1) Dalam pembangunan laman web, JavaScript mengendalikan DOM bersama -sama dengan HTML dan CSS untuk mencapai kesan dinamik dan menyokong rangka kerja seperti JQuery dan React. 2) Melalui reaktnatif dan ionik, JavaScript digunakan untuk membangunkan aplikasi mudah alih rentas platform. 3) Rangka kerja elektron membolehkan JavaScript membina aplikasi desktop. 4) Node.js membolehkan JavaScript berjalan di sisi pelayan dan menyokong permintaan serentak yang tinggi.

Python lebih sesuai untuk sains data dan automasi, manakala JavaScript lebih sesuai untuk pembangunan front-end dan penuh. 1. Python berfungsi dengan baik dalam sains data dan pembelajaran mesin, menggunakan perpustakaan seperti numpy dan panda untuk pemprosesan data dan pemodelan. 2. Python adalah ringkas dan cekap dalam automasi dan skrip. 3. JavaScript sangat diperlukan dalam pembangunan front-end dan digunakan untuk membina laman web dinamik dan aplikasi satu halaman. 4. JavaScript memainkan peranan dalam pembangunan back-end melalui Node.js dan menyokong pembangunan stack penuh.

C dan C memainkan peranan penting dalam enjin JavaScript, terutamanya digunakan untuk melaksanakan jurubahasa dan penyusun JIT. 1) C digunakan untuk menghuraikan kod sumber JavaScript dan menghasilkan pokok sintaks abstrak. 2) C bertanggungjawab untuk menjana dan melaksanakan bytecode. 3) C melaksanakan pengkompil JIT, mengoptimumkan dan menyusun kod hot-spot semasa runtime, dan dengan ketara meningkatkan kecekapan pelaksanaan JavaScript.

Aplikasi JavaScript di dunia nyata termasuk pembangunan depan dan back-end. 1) Memaparkan aplikasi front-end dengan membina aplikasi senarai TODO, yang melibatkan operasi DOM dan pemprosesan acara. 2) Membina Restfulapi melalui Node.js dan menyatakan untuk menunjukkan aplikasi back-end.

Penggunaan utama JavaScript dalam pembangunan web termasuk interaksi klien, pengesahan bentuk dan komunikasi tak segerak. 1) kemas kini kandungan dinamik dan interaksi pengguna melalui operasi DOM; 2) pengesahan pelanggan dijalankan sebelum pengguna mengemukakan data untuk meningkatkan pengalaman pengguna; 3) Komunikasi yang tidak bersesuaian dengan pelayan dicapai melalui teknologi Ajax.

Memahami bagaimana enjin JavaScript berfungsi secara dalaman adalah penting kepada pemaju kerana ia membantu menulis kod yang lebih cekap dan memahami kesesakan prestasi dan strategi pengoptimuman. 1) aliran kerja enjin termasuk tiga peringkat: parsing, penyusun dan pelaksanaan; 2) Semasa proses pelaksanaan, enjin akan melakukan pengoptimuman dinamik, seperti cache dalam talian dan kelas tersembunyi; 3) Amalan terbaik termasuk mengelakkan pembolehubah global, mengoptimumkan gelung, menggunakan const dan membiarkan, dan mengelakkan penggunaan penutupan yang berlebihan.

Python lebih sesuai untuk pemula, dengan lengkung pembelajaran yang lancar dan sintaks ringkas; JavaScript sesuai untuk pembangunan front-end, dengan lengkung pembelajaran yang curam dan sintaks yang fleksibel. 1. Sintaks Python adalah intuitif dan sesuai untuk sains data dan pembangunan back-end. 2. JavaScript adalah fleksibel dan digunakan secara meluas dalam pengaturcaraan depan dan pelayan.

Python dan JavaScript mempunyai kelebihan dan kekurangan mereka sendiri dari segi komuniti, perpustakaan dan sumber. 1) Komuniti Python mesra dan sesuai untuk pemula, tetapi sumber pembangunan depan tidak kaya dengan JavaScript. 2) Python berkuasa dalam bidang sains data dan perpustakaan pembelajaran mesin, sementara JavaScript lebih baik dalam perpustakaan pembangunan dan kerangka pembangunan depan. 3) Kedua -duanya mempunyai sumber pembelajaran yang kaya, tetapi Python sesuai untuk memulakan dengan dokumen rasmi, sementara JavaScript lebih baik dengan MDNWebDocs. Pilihan harus berdasarkan keperluan projek dan kepentingan peribadi.


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

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular