При создании функции «Добавить на домашний экран» на относительном URL-адресе я динамически генерирую manifest.json
и размещаю его, создав URL-адрес BLOB-объекта и добавив его к атрибуту href
link[rel="manifest"]
. * 1004. *
Там, где я застрял, мой сгенерированный URL-адрес манифеста указывает на что-то вроде: https://example.com/jbskdjcs9987r38943nsmd, вместо того, что я хочу, это: https://example.com/pwa/jbskdjcs9987r38943nsmd, что просто желание * BLOB-файл для размещения на относительном URL.
Ниже приведен пример создания файла BLOB-объекта:
let myManifest = {
"name": "Example PWA",
"short_name": "PWA",
"description": "Example PWA",
"start_url": ".",
"display": "standalone",
"theme_color": "#3f51b5",
"background_color": "#3f51b5",
"icons": [
{
"src": "images/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "images/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
]
}
const stringManifest = JSON.stringify(myManifest);
const blob = new Blob([stringManifest], {type: 'application/json'});
const manifestURL = URL.createObjectURL(blob);
console.log(manifestURL);
//document.getElementById('my-manifest-placeholder').setAttribute('href', manifestURL);
Я думал сделать что-то вроде:
const myURL = new URL('/pwa/','https://example.com');
const manifestURL = myURL.createObjectURL(blob);
Но это не работает, так как createObjectURL
- это метод Stati c URL.
Любое предложение, которое позволило бы мне создать и разместить мой manifest.json
файл динамически на относительном URL будет оценен.
Заранее спасибо.