【问题标题】:Authenticating a NativeScript app with Jhipster使用 Jhipster 验证 NativeScript 应用程序
【发布时间】:2018-01-31 12:58:33
【问题描述】:

我有一个简单的 nativeScript 应用程序 (ng-groceries),它是我根据教程创建的。现在我还设法让Jhipster MicroserviceJhipster Microservice Gateway 应用程序启动并运行。我正在尝试从nativeScript 应用程序登录到Jhipster 应用程序。我搜索了很多地方,试图理解生成的代码,但无法找出解决方案。我知道这与JWT 令牌有关,有人可以指出我正确的方向,或者给出解决方案的方法。这将是很大的帮助。

OK.

我尝试了以下方法:

  1. 尝试在 loginService.ts 中调用 http://169.254.86.103:8080/FITHSERVICEMONGO/api/authenticate/" 但在 Jhipster 服务服务器的控制台上看不到任何内容。
    169.254.86.103 是我通过 mvnw 启动 Jhipster 服务应用程序时给出的外部 IP。

  2. FITHSERVICEMONGO 是我的服务应用程序的名称。我也尝试从 url 中删除它。当我从 UI 从网关应用程序登录时,得到的请求是 http://169.254.86.103:8080/api/authenticate.I 也尝试过。同样,服务控制台和网关应用程序控制台上都没有。两者都由 mvnw 启动

  3. 要检查这个 IP 真的可以从我的模拟器中访问。我尝试从模拟器浏览器访问 //169.254.86.103:8080/#/。有用。 网关应用程序在浏览器中工作。在哪里 //localhost:8080/#/。没有工作。

  4. 当我发送一个带有参数作为用户名和密码的身份验证请求时,我期待这一点。我将获得一个 JWT 令牌作为回报,该令牌将随每个后续请求一起传递。

我的代码语法是:

http.post(
      //BackendService.apiUrl + "oauth/token",
        "BackendService.apiUrl" + "/FITHSERVICEMONGO/api/authenticate/",
      JSON.stringify({
        username: user.email,
        password: user.password

      }),
      { Content-Type: "application/json"}
    )

【问题讨论】:

  • 到目前为止您尝试过什么?代码示例和对问题的详尽解释对于获得高质量的答案大有帮助,并且可能有助于解决您的问题。
  • @pkanev,我已经编辑了我的问题,请现在检查问题,看看你是否能指出我正确的方向。谢谢。

标签: java authentication jwt nativescript jhipster


【解决方案1】:

要使用 JHipster 的后端验证第三方前端应用程序,您可以执行与 Angular 前端相同的操作,调用 /api/authenticate 并使用在 api 标头中传递接收到的 jwt 令牌。 Swagger UI 是您实现这一目标的朋友。

以下是使用 curl 检索 JWT 令牌的方法:

curl -X POST localhost:8080/api/authenticate -d '{"password":"admin","username":"admin"}' -H 'Content-Type: application/json' 

经过身份验证的请求示例:

curl -X POST localhost:8080/api/users -H 'Authorization: Bearer YOURTOKENHERE' 

【讨论】:

    猜你喜欢
    • 2019-02-15
    • 2016-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-24
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多