尝试了直接组合成文本
<audio controls="controls" src="http://192.168.1.1:8181\Audio\6月21日 01点32分.aac" data-src=""></audio>
无法发送{"code":-1,"msg":"parses request failed","data":null}
如何通过 API 插入音频链接?
相关帖子
-
详情参考注释,仅供参考。
// audio URL var audioSrc = ""; // 父id或文档id,必填 var parentID = "20240912201455-z7c6sgc"; // 插入到哪个块下面,为空插入到第一行 var previousID = "20240919194802-ig3zntk"; // 生成块id var newNodeId = Lute.NewNodeID(); // 生成更新时间 var updated = formatDateTime(new Date()); // audio dom代码 var audioHtml="<div data-node-id=\""+newNodeId+"\" data-node-index=\"1\" data-type=\"NodeAudio\" class=\"iframe\" updated=\""+updated+"\"><div class=\"iframe-content\"><audio controls=\"controls\" src=\""+audioSrc+"\" data-src=\"\"></audio></div><div class=\"protyle-attr\" contenteditable=\"false\"></div></div>" // 请求api fetchSyncPost('/api/block/insertBlock', {dataType:"dom", parentID:parentID, previousID:previousID, data: audioHtml}); // 生成块时间 类似dayjs().format("YYYYMMDDHHmmss") function formatDateTime(date) { var year = date.getFullYear(); var month = ('0' + (date.getMonth() + 1)).slice(-2); var day = ('0' + date.getDate()).slice(-2); var hours = ('0' + date.getHours()).slice(-2); var minutes = ('0' + date.getMinutes()).slice(-2); var seconds = ('0' + date.getSeconds()).slice(-2); return year + month + day + hours + minutes + seconds; } // 请求api函数 async function fetchSyncPost(url, data, returnType = 'json') { const init = { method: "POST", }; if (data) { if (data instanceof FormData) { init.body = data; } else { init.body = JSON.stringify(data); } } try { const res = await fetch(url, init); const res2 = returnType === 'json' ? await res.json() : await res.text(); return res2; } catch (e) { console.log(e); return returnType === 'json' ? { code: e.code || 1, msg: e.message || "", data: null } : ""; } }
- 其他回帖
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于