【问题标题】:How to get the URL of the calling application in my REST service?如何在我的 REST 服务中获取调用应用程序的 URL?
【发布时间】:2019-05-19 20:23:50
【问题描述】:

我正在尝试实施类似谷歌分析的服务。该服务将被嵌入在不同应用程序中的客户端JS调用。

在我的服务中,我想提取调用者应用程序的 URL。有什么方法可以在我的服务中提取这些信息,而不是让客户端 JS 发送它(由于数据安全问题,客户端不太可取)?

【问题讨论】:

  • 我不确定我是否完全理解这个问题,但通常你可以从 HTTP 引荐来源标头中读取调用方 URL
  • 是的,但是可以通过正确编写自定义脚本来欺骗它(通过设置请求的引用标头)?你知道是否有任何万无一失的方法来获取调用者的 URL

标签: javascript node.js http networking


【解决方案1】:

我想你想要这样的东西:

为此在 API 参数中添加 HttpServletRequest 请求并尝试此

String uri = request.getScheme() + "://" +   // "http" + "://
             request.getServerName() +       // "localhost"
             ":" + request.getServerPort() + // ":" + "8080"
             request.getRequestURI() +       // "/employee"
            (request.getQueryString() != null ? "?" +
             request.getQueryString() : ""); // "?" + "lastname=Kumar&age=30"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-19
    • 2019-04-27
    • 2020-07-04
    • 2019-05-30
    • 1970-01-01
    • 2015-06-05
    • 2019-12-22
    • 1970-01-01
    相关资源
    最近更新 更多