使用Jhipster验证NativeScript应用程序

时间:2017-08-23 05:21:36

标签: java authentication jwt nativescript jhipster

我有一个简单的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. 启动的
  4. 要检查此IP是否可以从我的模拟器中访问。我尝试从模拟器浏览器访问//169.254.86.103:8080/#/。有用。 网关应用程序在浏览器中工作。在哪里// localhost:8080 /#/。没有用。

  5. 当我发送带有params的身份验证请求作为用户名和密码时,我当时正在等待。我将获得一个JWT令牌以及该令牌,我将随后传递每个请求。

  6. 我的代码的语法是:

    http.post(
          //BackendService.apiUrl + "oauth/token",
            "BackendService.apiUrl" + "/FITHSERVICEMONGO/api/authenticate/",
          JSON.stringify({
            username: user.email,
            password: user.password
    
          }),
          { Content-Type: "application/json"}
        )
    

1 个答案:

答案 0 :(得分:0)

要使用JHipster的后端验证第三方前端应用程序,您可以执行与角度前端相同的操作,调用/ 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'