在脚本中或从服务器发送javascript web小部件的html更好吗?

在脚本中或从服务器发送javascript web小部件的html更好吗?,javascript,jquery,html,ruby-on-rails,widget,Javascript,Jquery,Html,Ruby On Rails,Widget,我正在构建一个JS小部件/脚本,其他人可以把它放到他们的网站上。小部件将与我已经构建的Rails API进行通信 小部件构建的html应该在脚本中(即在javascript/jquery中硬编码)还是作为json从服务器发送 我的小部件的MVP将只有一个html模板,但在未来,我希望它是可定制的,所以有多个html模板选项 在Craig的评论后编辑: 在用户将正确的JS片段粘贴到其站点后,脚本将通过CDN交付添加到用户的站点。基于此,我假设用户将使用类似的内容: <script src="

我正在构建一个JS小部件/脚本,其他人可以把它放到他们的网站上。小部件将与我已经构建的Rails API进行通信

小部件构建的html应该在脚本中(即在javascript/jquery中硬编码)还是作为json从服务器发送

我的小部件的MVP将只有一个html模板,但在未来,我希望它是可定制的,所以有多个html模板选项

在Craig的评论后编辑:


在用户将正确的JS片段粘贴到其站点后,脚本将通过CDN交付添加到用户的站点。

基于此,我假设用户将使用类似的内容:

<script src="your_awesome_widget_location/the_script_file.js" />

在这种情况下,无论您是通过javascript还是通过服务交付html都没有什么影响

布局多久更新一次

如果不经常,那么通过javascript交付,因为这将被缓存,并将减少服务器上的负载


如果经常出现这种情况,那么您不希望缓存它,Rails API路由可能会更好,JS会为请求生成一个随机键

如果没有更多信息,这很难回答,您想给JS文件下载,您想给链接(ala google analytics)或者你想要CDN风格的交付?谢谢你在@craigbezuiden上发表评论,我更新了我的问题,这样其他人就不会感到困惑了。JS将通过CDN风格的交付加载到用户的站点上。没问题,这使它更清晰。很棒的洞察力!“JS为请求生成随机密钥”是什么意思?一个简单的例子是