sanity.rs
1.0.0
基于reqwest开源客户端,用于用RUST的https://sanity.io消费。
该项目的目标是为食用理智的API提供相对较低的水平包装纸。第一个目标是确保所有基础都涵盖了运行裸露的groq查询字符串,然后我想补充一些ORM来对抗的询问(如果您知道任何简单的实施方法,请告诉我)。
伸展目标是增加更高级别的GraphQl消费者,以使理智操作变得轻而易举,但是还有其他用于Rust的GraustQl项目,因此这不是高优先级的:)
将sanity板条箱添加到您的依赖项中:
[ dependencies ]
sanity = " 0.1.0 "或直接通过github:
[ dependencies ]
sanity = { git = " https://github.com/DukeFerdinand/sanity.rs " }然后像其他任何外部板条箱一样包含:
// main.rs or wherever
.. .
extern crate sanity ;
.. .
fn main {
.. .
} 截至目前( v0.1.0 ),仅支持get请求。
GET请求 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 ( ) ) ) ;
}
} 我承认对Rust的新鲜陌生,因此,如果您看到任何要更改的内容或您想添加的内容,请在Github问题中打开功能请求:)
我愿意接受所有PR,只要它们适合该项目并包含良好的代码!