@helia/verified-fetch 5.0.0 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +2 -2
- package/dist/index.min.js.map +2 -2
- package/dist/src/plugins/plugin-handle-ipns-record.js +2 -2
- package/dist/src/plugins/plugin-handle-ipns-record.js.map +1 -1
- package/dist/src/url-resolver.js +2 -2
- package/dist/src/url-resolver.js.map +1 -1
- package/package.json +1 -1
- package/src/plugins/plugin-handle-ipns-record.ts +2 -2
- package/src/url-resolver.ts +2 -2
|
@@ -17,8 +17,8 @@ export class IpnsRecordPlugin extends BasePlugin {
|
|
|
17
17
|
async handle(context) {
|
|
18
18
|
const { resource, url, options, range } = context;
|
|
19
19
|
const { ipnsResolver } = this.pluginOptions;
|
|
20
|
-
if (url.pathname !== '' || url.protocol !== 'ipns:') {
|
|
21
|
-
this.log.error('invalid request for IPNS name "%s" and path "%s"',
|
|
20
|
+
if ((url.pathname !== '' && url.pathname !== '/') || url.protocol !== 'ipns:') {
|
|
21
|
+
this.log.error('invalid request for IPNS name "%s" and path "%s"', url, url.pathname);
|
|
22
22
|
return badRequestResponse(resource, new Error('Invalid IPNS name'));
|
|
23
23
|
}
|
|
24
24
|
if (range != null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-handle-ipns-record.js","sourceRoot":"","sources":["../../../src/plugins/plugin-handle-ipns-record.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAA;AACxC,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AACrF,OAAO,EAAE,6BAA6B,EAAE,MAAM,8CAA8C,CAAA;AAC5F,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAI7C;;;GAGG;AACH,MAAM,OAAO,gBAAiB,SAAQ,UAAU;IACrC,EAAE,GAAG,oBAAoB,CAAA;IACzB,KAAK,GAAG,EAAE,CAAA;IAEnB,SAAS,CAAE,EAAE,MAAM,EAAiB;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,KAAK,sBAAsB,CAAC,CAAA;IACvF,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,OAAsE;QAClF,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;QACjD,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,aAAa,CAAA;QAE3C,IAAI,GAAG,CAAC,QAAQ,KAAK,EAAE,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin-handle-ipns-record.js","sourceRoot":"","sources":["../../../src/plugins/plugin-handle-ipns-record.ts"],"names":[],"mappings":"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"}
|
package/dist/src/url-resolver.js
CHANGED
|
@@ -94,7 +94,7 @@ export class URLResolver {
|
|
|
94
94
|
// @ts-expect-error result namespace should only be ipns or ipfs
|
|
95
95
|
throw new TypeError(`Invalid resource. Unexpected DNSLink namespace ${result.namespace} from domain: ${domain}`);
|
|
96
96
|
}
|
|
97
|
-
if (result.path != null && url.pathname !== '') {
|
|
97
|
+
if (result.path != null && (url.pathname !== '' && url.pathname !== '/')) {
|
|
98
98
|
// path conflict?
|
|
99
99
|
}
|
|
100
100
|
const ipfsUrl = new URL(`ipfs://${result.cid}/${url.pathname}`);
|
|
@@ -108,7 +108,7 @@ export class URLResolver {
|
|
|
108
108
|
async resolveIPNSName(url, serverTiming, options) {
|
|
109
109
|
const peerId = peerIdFromString(url.hostname);
|
|
110
110
|
const result = await serverTiming.time('ipns.resolve', `Resolve IPNS name ${peerId}`, this.components.ipnsResolver.resolve(peerId, options));
|
|
111
|
-
if (result.path != null && url.pathname !== '') {
|
|
111
|
+
if (result.path != null && (url.pathname !== '' && url.pathname !== '/')) {
|
|
112
112
|
// path conflict?
|
|
113
113
|
}
|
|
114
114
|
const ipfsUrl = new URL(`ipfs://${result.cid}/${url.pathname}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-resolver.js","sourceRoot":"","sources":["../../src/url-resolver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"url-resolver.js","sourceRoot":"","sources":["../../src/url-resolver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helia/verified-fetch",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "A fetch-like API for obtaining verified & trustless IPFS content on the web",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
6
|
"homepage": "https://github.com/ipfs/helia-verified-fetch/tree/main/packages/verified-fetch#readme",
|
|
@@ -23,8 +23,8 @@ export class IpnsRecordPlugin extends BasePlugin {
|
|
|
23
23
|
const { resource, url, options, range } = context
|
|
24
24
|
const { ipnsResolver } = this.pluginOptions
|
|
25
25
|
|
|
26
|
-
if (url.pathname !== '' || url.protocol !== 'ipns:') {
|
|
27
|
-
this.log.error('invalid request for IPNS name "%s" and path "%s"',
|
|
26
|
+
if ((url.pathname !== '' && url.pathname !== '/') || url.protocol !== 'ipns:') {
|
|
27
|
+
this.log.error('invalid request for IPNS name "%s" and path "%s"', url, url.pathname)
|
|
28
28
|
return badRequestResponse(resource, new Error('Invalid IPNS name'))
|
|
29
29
|
}
|
|
30
30
|
|
package/src/url-resolver.ts
CHANGED
|
@@ -148,7 +148,7 @@ export class URLResolver implements URLResolverInterface {
|
|
|
148
148
|
throw new TypeError(`Invalid resource. Unexpected DNSLink namespace ${result.namespace} from domain: ${domain}`)
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
-
if (result.path != null && url.pathname !== '') {
|
|
151
|
+
if (result.path != null && (url.pathname !== '' && url.pathname !== '/')) {
|
|
152
152
|
// path conflict?
|
|
153
153
|
}
|
|
154
154
|
|
|
@@ -166,7 +166,7 @@ export class URLResolver implements URLResolverInterface {
|
|
|
166
166
|
const peerId = peerIdFromString(url.hostname)
|
|
167
167
|
const result = await serverTiming.time('ipns.resolve', `Resolve IPNS name ${peerId}`, this.components.ipnsResolver.resolve(peerId, options))
|
|
168
168
|
|
|
169
|
-
if (result.path != null && url.pathname !== '') {
|
|
169
|
+
if (result.path != null && (url.pathname !== '' && url.pathname !== '/')) {
|
|
170
170
|
// path conflict?
|
|
171
171
|
}
|
|
172
172
|
|