Klien Open Source untuk mengonsumsi https://sanity.io dengan karat, berdasarkan reqwest .
Tujuan di balik proyek ini adalah untuk menyediakan pembungkus tingkat yang relatif rendah untuk mengonsumsi API bertenaga kewarasan. Tujuan pertama adalah memastikan semua pangkalan dicakup untuk menjalankan string kueri Groq telanjang, maka saya ingin menambahkan dukungan untuk semacam ORM untuk menjalankan kueri melawan (jika Anda tahu cara mudah untuk mengimplementasikan ini tolong beri tahu saya).
Tujuan peregangan akan menambahkan konsumen graphql tingkat yang lebih tinggi untuk membuat operasi kewarasan menjadi mudah, tetapi ada proyek graphql lain untuk karat sehingga bukan prioritas tinggi :)
Tambahkan peti sanity ke dependensi Anda:
[ dependencies ]
sanity = " 0.1.0 "Atau langsung melalui GitHub:
[ dependencies ]
sanity = { git = " https://github.com/DukeFerdinand/sanity.rs " }Kemudian sertakan seperti yang Anda lakukan pada peti eksternal lainnya:
// main.rs or wherever
.. .
extern crate sanity ;
.. .
fn main {
.. .
} Sampai sekarang ( v0.1.0 ), hanya get permintaan yang didukung.
GET permintaan extern crate sanity ;
use sanity :: helpers :: get_json ;
fn main ( ) {
// Ideally you would pull these values from an env of some sort
// PLEASE do not use bare strings in your project
let mut sn = sanity :: create (
"proj_id" , // Sanity project ID to use
"data_set" , // Data set to query. i.e. "development"
"Long_string_for_token" , // Bearer token
false , // Use prod cdn or not
) ;
let res = sn . get ( & String :: from ( "*[_type == 'recipe']" ) ) ;
if res . is_ok ( ) {
println ! ( "{:?}" , get_json ( res . unwrap ( ) ) ) ;
}
} Saya memang cukup baru di Rust, jadi jika Anda melihat apa pun yang ingin Anda ubah atau apa pun yang ingin Anda lihat ditambahkan, buka permintaan fitur dalam masalah github :)
Saya terbuka untuk menerima setiap dan semua PR selama mereka sesuai dengan proyek dan berisi kode yang baik!