allow fragments in AP ID URLs - fixes polls

our own `renderVote` generates IDs like
`${this.config.url}/users/${user.id}#votes/${vote.id}/activity`

also `renderUpdate` generates
`${this.config.url}/users/${user.id}#updates/${new Date().getTime()}`

so we can't reject IDs with fragments
This commit is contained in:
dakkar 2025-06-01 14:06:04 +01:00
parent c1af8dfb7f
commit 034bfc02bd

View file

@ -80,7 +80,6 @@ export class ApUtilityService {
/**
* Verifies that a provided URL is in a format acceptable for federation.
* @throws {IdentifiableError} If URL cannot be parsed
* @throws {IdentifiableError} If URL contains a fragment
* @throws {IdentifiableError} If URL is not HTTPS
*/
public assertApUrl(url: string | URL): void {
@ -93,11 +92,6 @@ export class ApUtilityService {
}
}
// Hash component breaks federation
if (url.hash) {
throw new IdentifiableError('0bedd29b-e3bf-4604-af51-d3352e2518af', `invalid AP url ${url}: contains a fragment (#)`);
}
// Must be HTTPS
if (!this.checkHttps(url)) {
throw new IdentifiableError('0bedd29b-e3bf-4604-af51-d3352e2518af', `invalid AP url ${url}: unsupported protocol ${url.protocol}`);