Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "pxserv"
version = "1.0.0"
version = "1.0.1"
description = "PxServ Library for Rust"
edition = "2021"
authors = ["mustafa 'pxsty' kok <[email protected]>"]
Expand Down
23 changes: 13 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,26 +21,29 @@ use pxserv::PxServ;

fn main() {
// PxServ örneği oluşturma
let client = PxServ::new("API_KEY".to_string());
let client = PxServ::new("API_KEY");

// Veri kaydetme
let status = client.setdata("temperature".to_string(), "22.5°C".to_string());
println!("Durum: {}, Mesaj: {}", status.status, status.message);
let set_response = client.setdata("temperature", "22.5°C");
println!(
"Durum: {}, Mesaj: {}",
set_response.status, set_response.message
);

// Veri çekme
let response = client.getdata("temperature".to_string());
if let Some(data) = response.data {
println!("Veri: {}", data);
}
let get_response = client.getdata("temperature");
println!(
"Durum: {}, Mesaj: {}, Veri : {:?}",
get_response.status, get_response.message, get_response.data
);

// Veri silme
let delete_status = client.removedata("temperature".to_string());
let remove_response = client.removedata("temperature");
println!(
"Silme Durumu: {}, Mesaj: {}",
delete_status.status, delete_status.message
remove_response.status, remove_response.message
);
}

```

### Katkıda Bulunma
Expand Down
60 changes: 45 additions & 15 deletions src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,13 @@ pub struct PxServStatus {
}

impl PxServ {
pub fn new(apikey: String) -> PxServ {
PxServ { apikey }
pub fn new(apikey: &str) -> PxServ {
PxServ {
apikey: apikey.to_string(),
}
}
pub fn setdata(&self, key: String, value: String) -> PxServStatus {

pub fn setdata(&self, key: &str, value: &str) -> PxServStatus {
let client = Client::new();

let request_body = json!({
Expand All @@ -25,7 +28,7 @@ impl PxServ {

let request = client
.post("https://api.pxserv.net/database/setData")
.header("apikey", self.apikey.to_string())
.header("apikey", &self.apikey)
.json(&request_body)
.send();

Expand All @@ -34,8 +37,16 @@ impl PxServ {
let response_text = response.text().unwrap();
let json_response: Value = serde_json::from_str(&response_text).unwrap();

let status = json_response.get("status").unwrap().to_string();
let message = json_response.get("message").unwrap().to_string();
let status = json_response
.get("status")
.and_then(|s| s.as_i64())
.expect("PxServ API ERROR")
.to_string();
let message = json_response
.get("message")
.and_then(|s| s.as_str())
.expect("PxServ API ERROR")
.to_string();

return PxServStatus {
status,
Expand All @@ -52,7 +63,8 @@ impl PxServ {
}
}
}
pub fn getdata(&self, key: String) -> PxServStatus {

pub fn getdata(&self, key: &str) -> PxServStatus {
let client = Client::new();

let request_body = json!({
Expand All @@ -61,7 +73,7 @@ impl PxServ {

let request = client
.post("https://api.pxserv.net/database/getData")
.header("apikey", self.apikey.to_string())
.header("apikey", &self.apikey)
.json(&request_body)
.send();

Expand All @@ -70,15 +82,24 @@ impl PxServ {
let response_text = response.text().unwrap();
let json_response: Value = serde_json::from_str(&response_text).unwrap();

let status = json_response.get("status").unwrap().to_string();
let message = json_response.get("message").unwrap().to_string();
let status = json_response
.get("status")
.and_then(|s| s.as_i64())
.expect("PxServ API ERROR")
.to_string();
let message = json_response
.get("message")
.and_then(|s| s.as_str())
.expect("PxServ API ERROR")
.to_string();

let data = if status == "200" {
Some(
json_response
.get("data")
.and_then(|f| f.get("value"))
.unwrap()
.and_then(|s| s.as_str())
.expect("PxServ API ERROR")
.to_string(),
)
} else {
Expand All @@ -100,7 +121,8 @@ impl PxServ {
}
}
}
pub fn removedata(&self, key: String) -> PxServStatus {

pub fn removedata(&self, key: &str) -> PxServStatus {
let client = Client::new();

let request_body = json!({
Expand All @@ -109,7 +131,7 @@ impl PxServ {

let request = client
.post("https://api.pxserv.net/database/removeData")
.header("apikey", self.apikey.to_string())
.header("apikey", &self.apikey)
.json(&request_body)
.send();

Expand All @@ -118,8 +140,16 @@ impl PxServ {
let response_text = response.text().unwrap();
let json_response: Value = serde_json::from_str(&response_text).unwrap();

let status = json_response.get("status").unwrap().to_string();
let message = json_response.get("message").unwrap().to_string();
let status = json_response
.get("status")
.and_then(|s| s.as_i64())
.expect("PxServ API ERROR")
.to_string();
let message = json_response
.get("message")
.and_then(|s| s.as_str())
.expect("PxServ API ERROR")
.to_string();

return PxServStatus {
status,
Expand Down
Loading