首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用静态链接实现oEmbed发现

用静态链接实现oEmbed发现
EN

Stack Overflow用户
提问于 2021-02-05 22:31:56
回答 1查看 158关注 0票数 1

oEmbed规范要求站点链接到其oEmbed端点,并在该链接中对当前的URL进行编码。对于静态/CDN服务的网站来说,这是非常恼人的,因为它们现在必须将请求URL编码/返回到HTML响应中。

我想知道是否知道主要的oEmbed用户(如Slack、Facebook或oEmbed客户端库)在请求时是否会自己添加这个URL,以便在实践中打破规范并静态地这样做是合理的。任何静态实现的例子都可能是有洞察力的。

动态:Link: <http://flickr.com/services/oembed?url=http%3A%2F%2Fflickr.com%2Fphotos%2Fbees%2F2362225867%2F&format=json>; rel="alternate"; type="application/json+oembed"; title="Bacon Lollys oEmbed Profile"

静态:Link: <http://flickr.com/services/oembed?format=json>; rel="alternate"; type="application/json+oembed"; title="Bacon Lollys oEmbed Profile"

EN

回答 1

Stack Overflow用户

发布于 2022-05-10 16:37:41

我使用html标记替代实现了发现(相对于Link )。

我们的前端服务是通过让NGINX容器提供静态构建文件来部署的。我希望将oEmbed发现添加到所有响应中,因此我使用ndk_http_modulengx_http_set_misc_module创建了一个转义URI变量,然后将其作为html元素末尾的标记注入。我在Slack和Team这样的平台上玩了几天之后,我的经验是,包含URL查询参数和格式到目前为止还没有冲突。

我们的前端服务是通过让NGINX容器提供静态构建文件来部署的。我希望将oEmbed发现添加到所有响应中,因此我使用ndk_http_modulengx_http_set_misc_module创建了一个转义URI变量,然后将其作为html元素末尾的标记注入,如下所示:

代码语言:javascript
复制
server {
  listen 80;
  set_escape_uri $escaped_uri $http_host$request_uri;
  sub_filter '</head>' '<link rel=\"alternate\" type=\"application/json+oembed\" href=\"${OEMBED_URL}?format=json&amp;url=https%3A%2F%2F$escaped_uri\" title=\"Bacon Lollys oEmbed Profile\"></head>';
  ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66071482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档