好吧,有一个名为VENDOR_API_SERVER的远程服务器,我正在点击以获取各种数据。我有一个运行在MY_APP_SERVER上的应用程序,其中包含一个使用AJAX处理来自/来自VENDOR_API_SERVER的请求和响应的JavaScript文件。然后我有通过<script>
标签嵌入上述JavaScript文件的MY_USER_FACING_APP。所有3个应用程序运行在不同的主机当JavaScript文件使其REST调用VENDOR_API_SERVER时,我希望从MY_APP_SERVER执行该文件,然后将响应数据提供给MY_USER_FACING_APP上的页面。使用下面的配置,正在从MY_USER_FACING_APP执行JavaScript文件,这正是我试图避免的。上MY_APP_SERVER是否有可能获得远程JavaScript文件在嵌入页面之前在服务器上执行?
req.js
URL(例如):对MY_USER_FACING_APP http://my_app_server.io/js/req.js
var jqxhr = $.get("http://vendor_api_server.io/api/dothis", function() {
console.log('request made');
})
.done(function() {
console.log('success - check log');
})
.fail(function() {
console.log('fail - wassup');
})
results.html
URL(例如):http://my_user_facing_server.io/search/results.html
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Results</title>
<script src="http://my_app_server.io/js/req.js"></script>
</head>
<body>
<h1>Results</h1>
</body>
</html>
我说MY_APP_SERVER不能让MY_APP_SERVER执行javascript文件,然后才能将响应数据提供给MY_USER_FACING_APP,我想必须有一些安全,优雅的方式来使用MY_APP_SERVER作为代理/委托,但我很难包装我的头在附近。或者我正在尝试做的事情可能只是其核心内容的巨大破绽......我不知道,因为我对这种类型的开发很陌生。
有任何洞察力和/或智慧可以传授的人吗?
为什么不在YOUR_APP_SERVER中创建服务器端请求而不是javascript请求? –
为什么脚本驻留在my_app_server而不是它属于的my_user_facing_app?它有什么特别之处?什么是my_app_server的好处? – Bergi
是的,无论脚本如何,您的服务器都可以。但不能简单地通过执行一个专门用于浏览器环境的脚本。 – Bergi