- Nitro middleware resolves page requests once and hands the answer to the render (event.context.seo); the route middleware reuses it - useCmsSeo: html lang, hreflang links, og:locale and exactly one JSON-LD script with one @graph (CMS nodes plus useSchemaNode nodes, merged by @id) - local module (configKey seo): cms (alias of public.seo.enabled), breadcrumbs, links.newTabHint, rootFiles, resolveFiles - GET /api/__seo__/resolve for client navigation through the Nuxt server - smoke harness: count=, exact header=, noheader=, reqheader=, repeated options, resolves/apicalls/noreport lines, --no-site; v0.1.1 suite runs unchanged against a backend without /site
86 lines
2.2 KiB
JSON
86 lines
2.2 KiB
JSON
{
|
|
"/blog/lwia-grzywa": {
|
|
"action": "ok",
|
|
"status": 200,
|
|
"url": "https://example.test/blog/lwia-grzywa",
|
|
"locale": "pl",
|
|
"staging": false,
|
|
"seo": {
|
|
"title": "Lwia grzywa | Example",
|
|
"description": "Lwia grzywa | Example opis",
|
|
"canonical": "https://example.test/blog/lwia-grzywa",
|
|
"robots": "index, follow",
|
|
"x_robots_tag": "",
|
|
"og": {
|
|
"title": "Lwia grzywa | Example",
|
|
"description": "Lwia grzywa | Example opis",
|
|
"image": "https://example.test/img/og.png",
|
|
"url": "https://example.test/blog/lwia-grzywa",
|
|
"locale": "pl_PL",
|
|
"locale_alternates": [
|
|
"en_US"
|
|
]
|
|
},
|
|
"twitter": {
|
|
"card": "summary_large_image",
|
|
"site": "@example"
|
|
},
|
|
"verification": []
|
|
},
|
|
"html_lang": "pl",
|
|
"alternates": [
|
|
{
|
|
"hreflang": "pl",
|
|
"url": "https://example.test/blog/lwia-grzywa"
|
|
},
|
|
{
|
|
"hreflang": "en",
|
|
"url": "https://example.test/en/blog/lions-mane"
|
|
},
|
|
{
|
|
"hreflang": "x-default",
|
|
"url": "https://example.test/blog/lwia-grzywa"
|
|
}
|
|
],
|
|
"jsonld": {
|
|
"@context": "https://schema.org",
|
|
"@graph": [
|
|
{
|
|
"@type": "WebPage",
|
|
"@id": "https://example.test/blog/lwia-grzywa#webpage",
|
|
"url": "https://example.test/blog/lwia-grzywa",
|
|
"name": "Lwia grzywa",
|
|
"isPartOf": {
|
|
"@id": "https://example.test/#website"
|
|
}
|
|
},
|
|
{
|
|
"@type": "BlogPosting",
|
|
"@id": "https://example.test/blog/lwia-grzywa#article",
|
|
"headline": "Lwia grzywa </script><script>alert(1)</script>",
|
|
"mainEntityOfPage": {
|
|
"@id": "https://example.test/blog/lwia-grzywa#webpage"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"breadcrumbs": [
|
|
{
|
|
"name": "Start",
|
|
"url": "https://example.test/",
|
|
"path": "/"
|
|
},
|
|
{
|
|
"name": "Blog",
|
|
"url": "https://example.test/blog",
|
|
"path": "/blog"
|
|
},
|
|
{
|
|
"name": "Lwia grzywa",
|
|
"url": "https://example.test/blog/lwia-grzywa",
|
|
"path": "/blog/lwia-grzywa"
|
|
}
|
|
]
|
|
}
|
|
}
|