Also return json for long accept header with profile link (ref #1216)

This commit is contained in:
Felix Ableitner 2020-10-21 15:48:43 +02:00
parent dd99e77881
commit e8379cb3f7

View file

@ -13,15 +13,21 @@ use lemmy_apub::{
use lemmy_utils::settings::Settings; use lemmy_utils::settings::Settings;
use sha2::{Digest, Sha256}; use sha2::{Digest, Sha256};
static APUB_JSON_CONTENT_TYPE_LONG: &str =
"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"";
pub fn config(cfg: &mut web::ServiceConfig) { pub fn config(cfg: &mut web::ServiceConfig) {
if Settings::get().federation.enabled { if Settings::get().federation.enabled {
println!("federation enabled, host is {}", Settings::get().hostname); println!("federation enabled, host is {}", Settings::get().hostname);
let digest_verifier = VerifyDigest::new(Sha256::new()); let digest_verifier = VerifyDigest::new(Sha256::new());
let header_guard = guard::Any(guard::Header("Accept", APUB_JSON_CONTENT_TYPE))
.or(guard::Header("Accept", APUB_JSON_CONTENT_TYPE_LONG));
cfg cfg
.service( .service(
web::scope("/") web::scope("/")
.guard(guard::Header("Accept", APUB_JSON_CONTENT_TYPE)) .guard(header_guard)
.route( .route(
"/c/{community_name}", "/c/{community_name}",
web::get().to(get_apub_community_http), web::get().to(get_apub_community_http),