Update to aw-b.18
This commit is contained in:
parent
b089972fd8
commit
7a5787e3ca
|
@ -1,7 +1,7 @@
|
|||
[package]
|
||||
name = "actix-webfinger"
|
||||
description = "Types and helpers to create and fetch Webfinger resources"
|
||||
version = "0.4.0-beta.4"
|
||||
version = "0.4.0-beta.5"
|
||||
license = "GPL-3.0"
|
||||
authors = ["asonix <asonix@asonix.dog>"]
|
||||
repository = "https://git.asonix.dog/Aardwolf/actix-webfinger"
|
||||
|
@ -10,8 +10,8 @@ edition = "2021"
|
|||
|
||||
[dependencies]
|
||||
actix-rt = "2.3.0"
|
||||
actix-web = { version = "4.0.0-beta.11", default-features = false }
|
||||
awc = { version = "3.0.0-beta.10", default-features = false }
|
||||
actix-web = { version = "4.0.0-beta.18", default-features = false }
|
||||
awc = { version = "3.0.0-beta.17", default-features = false }
|
||||
serde = "1.0"
|
||||
serde_derive = "1.0"
|
||||
thiserror = "1.0"
|
||||
|
|
13
src/lib.rs
13
src/lib.rs
|
@ -98,9 +98,8 @@
|
|||
//!
|
||||
//! You should have received a copy of the GNU General Public License along with Actix Webfinger. If not, see [http://www.gnu.org/licenses/](http://www.gnu.org/licenses/).
|
||||
use actix_web::{
|
||||
dev::RequestHead,
|
||||
error::ResponseError,
|
||||
guard::Guard,
|
||||
guard::{Guard, GuardContext},
|
||||
http::Method,
|
||||
web::{get, Query},
|
||||
FromRequest, HttpResponse, Resource,
|
||||
|
@ -135,8 +134,8 @@ use std::{future::Future, pin::Pin};
|
|||
pub struct WebfingerGuard;
|
||||
|
||||
impl Guard for WebfingerGuard {
|
||||
fn check(&self, request: &RequestHead) -> bool {
|
||||
let valid_accept = if let Some(val) = request.headers().get("Accept") {
|
||||
fn check(&self, ctx: &GuardContext<'_>) -> bool {
|
||||
let valid_accept = if let Some(val) = ctx.head().headers().get("Accept") {
|
||||
if let Ok(s) = val.to_str() {
|
||||
s.split(',').any(|v| {
|
||||
let v = if let Some(index) = v.find(';') {
|
||||
|
@ -161,7 +160,7 @@ impl Guard for WebfingerGuard {
|
|||
true
|
||||
};
|
||||
|
||||
valid_accept && request.method == Method::GET
|
||||
valid_accept && ctx.head().method == Method::GET
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -665,9 +664,9 @@ pub enum FetchError {
|
|||
mod tests {
|
||||
use crate::{Webfinger, WebfingerQuery};
|
||||
|
||||
const SIR_BOOPS: &'static str = r#"{"subject":"acct:Sir_Boops@sergal.org","aliases":["https://mastodon.sergal.org/@Sir_Boops","https://mastodon.sergal.org/users/Sir_Boops"],"links":[{"rel":"http://webfinger.net/rel/profile-page","type":"text/html","href":"https://mastodon.sergal.org/@Sir_Boops"},{"rel":"http://schemas.google.com/g/2010#updates-from","type":"application/atom+xml","href":"https://mastodon.sergal.org/users/Sir_Boops.atom"},{"rel":"self","type":"application/activity+json","href":"https://mastodon.sergal.org/users/Sir_Boops"},{"rel":"salmon","href":"https://mastodon.sergal.org/api/salmon/1"},{"rel":"magic-public-key","href":"data:application/magic-public-key,RSA.vwDujxmxoYHs64MyVB3LG5ZyBxV3ufaMRBFu42bkcTpISq1WwZ-3Zb6CI8zOO-nM-Q2llrVRYjZa4ZFnOLvMTq_Kf-Zf5wy2aCRer88gX-MsJOAtItSi412y0a_rKOuFaDYLOLeTkRvmGLgZWbsrZJOp-YWb3zQ5qsIOInkc5BwI172tMsGeFtsnbNApPV4lrmtTGaJ8RiM8MR7XANBOfOHggSt1-eAIKGIsCmINEMzs1mG9D75xKtC_sM8GfbvBclQcBstGkHAEj1VHPW0ch6Bok5_QQppicyb8UA1PAA9bznSFtKlYE4xCH8rlCDSDTBRtdnBWHKcj619Ujz4Qaw==.AQAB"},{"rel":"http://ostatus.org/schema/1.0/subscribe","template":"https://mastodon.sergal.org/authorize_interaction?uri={uri}"}]}"#;
|
||||
const SIR_BOOPS: &str = r#"{"subject":"acct:Sir_Boops@sergal.org","aliases":["https://mastodon.sergal.org/@Sir_Boops","https://mastodon.sergal.org/users/Sir_Boops"],"links":[{"rel":"http://webfinger.net/rel/profile-page","type":"text/html","href":"https://mastodon.sergal.org/@Sir_Boops"},{"rel":"http://schemas.google.com/g/2010#updates-from","type":"application/atom+xml","href":"https://mastodon.sergal.org/users/Sir_Boops.atom"},{"rel":"self","type":"application/activity+json","href":"https://mastodon.sergal.org/users/Sir_Boops"},{"rel":"salmon","href":"https://mastodon.sergal.org/api/salmon/1"},{"rel":"magic-public-key","href":"data:application/magic-public-key,RSA.vwDujxmxoYHs64MyVB3LG5ZyBxV3ufaMRBFu42bkcTpISq1WwZ-3Zb6CI8zOO-nM-Q2llrVRYjZa4ZFnOLvMTq_Kf-Zf5wy2aCRer88gX-MsJOAtItSi412y0a_rKOuFaDYLOLeTkRvmGLgZWbsrZJOp-YWb3zQ5qsIOInkc5BwI172tMsGeFtsnbNApPV4lrmtTGaJ8RiM8MR7XANBOfOHggSt1-eAIKGIsCmINEMzs1mG9D75xKtC_sM8GfbvBclQcBstGkHAEj1VHPW0ch6Bok5_QQppicyb8UA1PAA9bznSFtKlYE4xCH8rlCDSDTBRtdnBWHKcj619Ujz4Qaw==.AQAB"},{"rel":"http://ostatus.org/schema/1.0/subscribe","template":"https://mastodon.sergal.org/authorize_interaction?uri={uri}"}]}"#;
|
||||
|
||||
const QUERIES: [&'static str; 4] = [
|
||||
const QUERIES: [&str; 4] = [
|
||||
r#"{"resource":"acct:asonix@asonix.dog"}"#,
|
||||
r#"{"resource":"asonix@asonix.dog"}"#,
|
||||
r#"{"resource":"acct:@asonix@asonix.dog"}"#,
|
||||
|
|
Loading…
Reference in a new issue