设置nodejs服务器以向我的应用程序提供REST接口(带有json对象)。 这很好。
目前我运行Jekyll服务来提供内容页面。这会导致一些跨站点脚本问题,因为它们在不同的端口上运行。我可以解决这个问题,但这似乎不是最佳解决方案。
运行nodejs服务器以在同一端口上提供REST接口和Web内容接口是否正常。我一直在看nodejs / express / Swig作为Jekyll服务的替代品,但我似乎在nodejs上运行express / Swig会改变我的响应对象的行为,这使得使用REST不是那么理想。
答案 0 :(得分:2)
运行nodejs服务器以在同一端口上提供REST接口和Web内容接口是否正常
是的,这很常见,因为处理起来要简单得多,所以许多小应用程序/ apis选择这种方法。有时,API使用像“/ api”这样的URL路径前缀作为基本区别。有时人们使用内容协商,其中'/ user / 42'将发送HTML或JSON,具体取决于请求'Accept'标题。
但是,在端口80上使用基于路径路由到不同后端应用程序的Web服务器也很常见,因此例如/api
的任何内容都将被反向代理{{1}上的快速应用程序1}}但是其他寻找内容页面的内容可能会转到127.0.0.1:3000
上的jekyll应用。