uri-js-parse.json 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503
  1. [
  2. [
  3. "//www.g.com/error\n/bleh/bleh",
  4. {
  5. "host": "www.g.com",
  6. "path": "/error%0A/bleh/bleh",
  7. "reference": "relative"
  8. }
  9. ],
  10. [
  11. "https://fastify.org",
  12. {
  13. "scheme": "https",
  14. "host": "fastify.org",
  15. "path": "",
  16. "reference": "absolute"
  17. }
  18. ],
  19. [
  20. "/definitions/Record%3Cstring%2CPerson%3E",
  21. {
  22. "path": "/definitions/Record%3Cstring%2CPerson%3E",
  23. "reference": "relative"
  24. }
  25. ],
  26. [
  27. "//10.10.10.10",
  28. {
  29. "host": "10.10.10.10",
  30. "path": "",
  31. "reference": "relative"
  32. }
  33. ],
  34. [
  35. "//10.10.000.10",
  36. {
  37. "host": "10.10.0.10",
  38. "path": "",
  39. "reference": "relative"
  40. }
  41. ],
  42. [
  43. "//[2001:db8::7%en0]",
  44. {
  45. "host": "2001:db8::7%en0",
  46. "path": "",
  47. "reference": "relative"
  48. }
  49. ],
  50. [
  51. "//[2001:dbZ::1]:80",
  52. {
  53. "host": "[2001:dbz::1]",
  54. "port": 80,
  55. "path": "",
  56. "error": "URI host is malformed.",
  57. "reference": "relative"
  58. }
  59. ],
  60. [
  61. "//[2001:db8::1]:80",
  62. {
  63. "host": "2001:db8::1",
  64. "port": 80,
  65. "path": "",
  66. "reference": "relative"
  67. }
  68. ],
  69. [
  70. "//[2001:db8::001]:80",
  71. {
  72. "host": "2001:db8::1",
  73. "port": 80,
  74. "path": "",
  75. "reference": "relative"
  76. }
  77. ],
  78. [
  79. "uri://user:pass@example.com:123/one/two.three?q1=a1&q2=a2#body",
  80. {
  81. "scheme": "uri",
  82. "userinfo": "user:pass",
  83. "host": "example.com",
  84. "port": 123,
  85. "path": "/one/two.three",
  86. "query": "q1=a1&q2=a2",
  87. "fragment": "body",
  88. "reference": "uri"
  89. }
  90. ],
  91. [
  92. "http://user:pass@example.com:123/one/space in.url?q1=a1&q2=a2#body",
  93. {
  94. "scheme": "http",
  95. "userinfo": "user:pass",
  96. "host": "example.com",
  97. "port": 123,
  98. "path": "/one/space%20in.url",
  99. "query": "q1=a1&q2=a2",
  100. "fragment": "body",
  101. "reference": "uri"
  102. }
  103. ],
  104. [
  105. "http://User:Pass@example.com:123/one/space in.url?q1=a1&q2=a2#body",
  106. {
  107. "scheme": "http",
  108. "userinfo": "User:Pass",
  109. "host": "example.com",
  110. "port": 123,
  111. "path": "/one/space%20in.url",
  112. "query": "q1=a1&q2=a2",
  113. "fragment": "body",
  114. "reference": "uri"
  115. }
  116. ],
  117. [
  118. "http://A%3AB@example.com:123/one/space",
  119. {
  120. "scheme": "http",
  121. "userinfo": "A%3AB",
  122. "host": "example.com",
  123. "port": 123,
  124. "path": "/one/space",
  125. "reference": "absolute"
  126. }
  127. ],
  128. [
  129. "//[::ffff:129.144.52.38]",
  130. {
  131. "host": "::ffff:129.144.52.38",
  132. "path": "",
  133. "reference": "relative"
  134. }
  135. ],
  136. [
  137. "uri://10.10.10.10.example.com/en/process",
  138. {
  139. "scheme": "uri",
  140. "host": "10.10.10.10.example.com",
  141. "path": "/en/process",
  142. "reference": "absolute"
  143. }
  144. ],
  145. [
  146. "//[2606:2800:220:1:248:1893:25c8:1946]/test",
  147. {
  148. "host": "2606:2800:220:1:248:1893:25c8:1946",
  149. "path": "/test",
  150. "reference": "relative"
  151. }
  152. ],
  153. [
  154. "ws://example.com/chat",
  155. {
  156. "scheme": "ws",
  157. "host": "example.com",
  158. "reference": "absolute",
  159. "secure": false,
  160. "resourceName": "/chat"
  161. }
  162. ],
  163. [
  164. "ws://example.com/foo?bar=baz",
  165. {
  166. "scheme": "ws",
  167. "host": "example.com",
  168. "reference": "absolute",
  169. "secure": false,
  170. "resourceName": "/foo?bar=baz"
  171. }
  172. ],
  173. [
  174. "wss://example.com/?bar=baz",
  175. {
  176. "scheme": "wss",
  177. "host": "example.com",
  178. "reference": "absolute",
  179. "secure": true,
  180. "resourceName": "/?bar=baz"
  181. }
  182. ],
  183. [
  184. "wss://example.com/chat",
  185. {
  186. "scheme": "wss",
  187. "host": "example.com",
  188. "reference": "absolute",
  189. "secure": true,
  190. "resourceName": "/chat"
  191. }
  192. ],
  193. [
  194. "wss://example.com/foo?bar=baz",
  195. {
  196. "scheme": "wss",
  197. "host": "example.com",
  198. "reference": "absolute",
  199. "secure": true,
  200. "resourceName": "/foo?bar=baz"
  201. }
  202. ],
  203. [
  204. "wss://example.com/?bar=baz",
  205. {
  206. "scheme": "wss",
  207. "host": "example.com",
  208. "reference": "absolute",
  209. "secure": true,
  210. "resourceName": "/?bar=baz"
  211. }
  212. ],
  213. [
  214. "urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6",
  215. {
  216. "scheme": "urn",
  217. "reference": "absolute",
  218. "nid": "uuid",
  219. "uuid": "f81d4fae-7dec-11d0-a765-00a0c91e6bf6"
  220. }
  221. ],
  222. [
  223. "urn:uuid:notauuid-7dec-11d0-a765-00a0c91e6bf6",
  224. {
  225. "scheme": "urn",
  226. "reference": "absolute",
  227. "nid": "uuid",
  228. "uuid": "notauuid-7dec-11d0-a765-00a0c91e6bf6",
  229. "error": "UUID is not valid."
  230. }
  231. ],
  232. [
  233. "urn:example:%D0%B0123,z456",
  234. {
  235. "scheme": "urn",
  236. "reference": "absolute",
  237. "nid": "example",
  238. "nss": "%D0%B0123,z456"
  239. }
  240. ],
  241. [
  242. "//[2606:2800:220:1:248:1893:25c8:1946:43209]",
  243. {
  244. "host": "[2606:2800:220:1:248:1893:25c8:1946:43209]",
  245. "path": "",
  246. "error": "URI host is malformed.",
  247. "reference": "relative"
  248. }
  249. ],
  250. [
  251. "http://foo.bar",
  252. {
  253. "scheme": "http",
  254. "host": "foo.bar",
  255. "path": "",
  256. "reference": "absolute"
  257. }
  258. ],
  259. [
  260. "http://",
  261. {
  262. "scheme": "http",
  263. "host": "",
  264. "path": "",
  265. "reference": "absolute",
  266. "error": "HTTP URIs must have a host."
  267. }
  268. ],
  269. [
  270. "#/$defs/stringMap",
  271. {
  272. "path": "",
  273. "fragment": "/$defs/stringMap",
  274. "reference": "same-document"
  275. }
  276. ],
  277. [
  278. "#/$defs/string%20Map",
  279. {
  280. "path": "",
  281. "fragment": "/$defs/string%20Map",
  282. "reference": "same-document"
  283. }
  284. ],
  285. [
  286. "#/$defs/string Map",
  287. {
  288. "path": "",
  289. "fragment": "/$defs/string%20Map",
  290. "reference": "same-document"
  291. }
  292. ],
  293. [
  294. "//?json=%7B%22foo%22%3A%22bar%22%7D",
  295. {
  296. "host": "",
  297. "path": "",
  298. "query": "json=%7B%22foo%22%3A%22bar%22%7D",
  299. "reference": "relative"
  300. }
  301. ],
  302. [
  303. "mailto:chris@example.com",
  304. {
  305. "scheme": "mailto",
  306. "reference": "absolute",
  307. "to": [
  308. "chris@example.com"
  309. ]
  310. }
  311. ],
  312. [
  313. "mailto:infobot@example.com?subject=current-issue",
  314. {
  315. "scheme": "mailto",
  316. "reference": "absolute",
  317. "to": [
  318. "infobot@example.com"
  319. ],
  320. "subject": "current-issue"
  321. }
  322. ],
  323. [
  324. "mailto:infobot@example.com?body=send%20current-issue",
  325. {
  326. "scheme": "mailto",
  327. "reference": "absolute",
  328. "to": [
  329. "infobot@example.com"
  330. ],
  331. "body": "send current-issue"
  332. }
  333. ],
  334. [
  335. "mailto:infobot@example.com?body=send%20current-issue%0D%0Asend%20index",
  336. {
  337. "scheme": "mailto",
  338. "reference": "absolute",
  339. "to": [
  340. "infobot@example.com"
  341. ],
  342. "body": "send current-issue\r\nsend index"
  343. }
  344. ],
  345. [
  346. "mailto:list@example.org?In-Reply-To=%3C3469A91.D10AF4C@example.com%3E",
  347. {
  348. "scheme": "mailto",
  349. "reference": "absolute",
  350. "to": [
  351. "list@example.org"
  352. ],
  353. "headers": {
  354. "In-Reply-To": "<3469A91.D10AF4C@example.com>"
  355. }
  356. }
  357. ],
  358. [
  359. "mailto:majordomo@example.com?body=subscribe%20bamboo-l",
  360. {
  361. "scheme": "mailto",
  362. "reference": "absolute",
  363. "to": [
  364. "majordomo@example.com"
  365. ],
  366. "body": "subscribe bamboo-l"
  367. }
  368. ],
  369. [
  370. "mailto:joe@example.com?cc=bob@example.com&body=hello",
  371. {
  372. "scheme": "mailto",
  373. "reference": "absolute",
  374. "to": [
  375. "joe@example.com"
  376. ],
  377. "body": "hello",
  378. "headers": {
  379. "cc": "bob@example.com"
  380. }
  381. }
  382. ],
  383. [
  384. "mailto:gorby%25kremvax@example.com",
  385. {
  386. "scheme": "mailto",
  387. "reference": "absolute",
  388. "to": [
  389. "gorby%kremvax@example.com"
  390. ]
  391. }
  392. ],
  393. [
  394. "mailto:unlikely%3Faddress@example.com?blat=foop",
  395. {
  396. "scheme": "mailto",
  397. "reference": "absolute",
  398. "to": [
  399. "unlikely?address@example.com"
  400. ],
  401. "headers": {
  402. "blat": "foop"
  403. }
  404. }
  405. ],
  406. [
  407. "mailto:Mike%26family@example.org",
  408. {
  409. "scheme": "mailto",
  410. "reference": "absolute",
  411. "to": [
  412. "Mike&family@example.org"
  413. ]
  414. }
  415. ],
  416. [
  417. "mailto:%22not%40me%22@example.org",
  418. {
  419. "scheme": "mailto",
  420. "reference": "absolute",
  421. "to": [
  422. "\"not@me\"@example.org"
  423. ]
  424. }
  425. ],
  426. [
  427. "mailto:%22oh%5C%5Cno%22@example.org",
  428. {
  429. "scheme": "mailto",
  430. "reference": "absolute",
  431. "to": [
  432. "\"oh\\\\no\"@example.org"
  433. ]
  434. }
  435. ],
  436. [
  437. "mailto:%22%5C%5C%5C%22it's%5C%20ugly%5C%5C%5C%22%22@example.org",
  438. {
  439. "scheme": "mailto",
  440. "reference": "absolute",
  441. "to": [
  442. "\"\\\\\\\"it's\\ ugly\\\\\\\"\"@example.org"
  443. ]
  444. }
  445. ],
  446. [
  447. "mailto:user@example.org?subject=caf%C3%A9",
  448. {
  449. "scheme": "mailto",
  450. "reference": "absolute",
  451. "to": [
  452. "user@example.org"
  453. ],
  454. "subject": "café"
  455. }
  456. ],
  457. [
  458. "mailto:user@example.org?subject=%3D%3Futf-8%3FQ%3Fcaf%3DC3%3DA9%3F%3D",
  459. {
  460. "scheme": "mailto",
  461. "reference": "absolute",
  462. "to": [
  463. "user@example.org"
  464. ],
  465. "subject": "=?utf-8?Q?caf=C3=A9?="
  466. }
  467. ],
  468. [
  469. "mailto:user@example.org?subject=%3D%3Fiso-8859-1%3FQ%3Fcaf%3DE9%3F%3D",
  470. {
  471. "scheme": "mailto",
  472. "reference": "absolute",
  473. "to": [
  474. "user@example.org"
  475. ],
  476. "subject": "=?iso-8859-1?Q?caf=E9?="
  477. }
  478. ],
  479. [
  480. "mailto:user@example.org?subject=caf%C3%A9&body=caf%C3%A9",
  481. {
  482. "scheme": "mailto",
  483. "reference": "absolute",
  484. "to": [
  485. "user@example.org"
  486. ],
  487. "subject": "café",
  488. "body": "café"
  489. }
  490. ],
  491. [
  492. "mailto:user@%E7%B4%8D%E8%B1%86.example.org?subject=Test&body=NATTO",
  493. {
  494. "scheme": "mailto",
  495. "reference": "absolute",
  496. "to": [
  497. "user@xn--99zt52a.example.org"
  498. ],
  499. "subject": "Test",
  500. "body": "NATTO"
  501. }
  502. ]
  503. ]