小编Mar*_*ers的帖子

router.navigate和router.navigateByUrl无法正常工作

我将所请求的Url保存在localstorage中,重定向到身份服务器,这个重定向回我的根URL,然后我想导航到之前保存的URL.

我在守卫中保存网址:

canActivate(
    next: ActivatedRouteSnapshot,
    state: RouterStateSnapshot): Observable<boolean> {

    const hasAccessToken$ = Observable.of(this.oAuthService.hasValidAccessToken());

    const setRedirect$ = hasAccessToken$
      .filter(isAllowed => !isAllowed)
      .do(() => localStorage.setItem('login.redirect', state.url)) // save requested url for later redirect
      .do(() => this.oAuthService.initImplicitFlow());

    setRedirect$.subscribe();
    return hasAccessToken$;
  }
Run Code Online (Sandbox Code Playgroud)

我正在尝试在我的app.component.ts中重定向:

ngOnInit() {
    this.oAuthService.tryLogin({ onTokenReceived: () => this.redirect() }); // try to parse token from url
  }

private redirect() {
    const url = localStorage.getItem('login.redirect');
    console.log(url);
    this.router.navigateByUrl(url);
  }
Run Code Online (Sandbox Code Playgroud)

我的路由看起来像这样:

const routes: Routes = [
    {
        path: 'files',
        loadChildren: './folder-page/folder-page.module#FolderPageModule',
        canActivate: [AuthGuard]
    },
    { …
Run Code Online (Sandbox Code Playgroud)

oauth-2.0 angular angular-router-guards

7
推荐指数
0
解决办法
2511
查看次数

gin-contrib/cors 返回 404

我有一个 golang REST API,它实现了gin-contrib/cors. 但是当我调用 POST 请求时,预检请求 (OPTIONS) 返回 404 结果。

这是实现的片段:

engine := gin.New()
group := engine.Group("/api/v1")

// Recovery middleware recovers from any panics and writes a 500 if there was one.
group.Use(gin.Recovery())

// Set cors and db middleware
engine.Use(cors.New(cors.Config{
    AllowOrigins:     []string{"*"},
    AllowMethods:     []string{"*"},
    AllowHeaders:     []string{"*"},
    AllowCredentials: true,     
    MaxAge: 12 * time.Hour,
}))

// Register routes
group.POST("/customers", ctrl.SendRequest)
Run Code Online (Sandbox Code Playgroud)

go cors go-gin

1
推荐指数
2
解决办法
4383
查看次数

将HTTP响应呈现为Angular2中的列表

我有这样的json响应.

{
  "response": {
    "data": {
      "customers": [{
        "customerNumber": "123",
        "customerName": "ABC",
        "customeraddresse": [{
          "address": "test"
        }]
      }, {
        "customerNumber": "345",
        "customerName": "CDS",
        "customeraddresse": [{
          "address": "test1"
        }]
      }]
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我正在做这样的请求来获取响应数据.它将被退回,因为我已经检查过了.

public getData(): Promise<any> {
  let payload = JSON.stringify( ... );
  let headers = new Headers({ 'Content-Type': 'application/json'});

  return this.http.post(this.url, payload, { headers: headers })
             .toPromise()
             .then(res => {                  
                this.response_data = res.json().response.data;                  
                return this.response_data;
             })
             .catch(this.handleError);
}
Run Code Online (Sandbox Code Playgroud)

但问题是,我想获取customerNumber和customerName的值,并将它们显示在列表中

在此示例中,有两个客户,因此此标记应呈现两次:

<div>
  <div>CustomerNumber</div>
  <div>CustomerName</div>
</div>
Run Code Online (Sandbox Code Playgroud)

json ngfor angular

0
推荐指数
1
解决办法
151
查看次数

标签 统计

angular ×2

angular-router-guards ×1

cors ×1

go ×1

go-gin ×1

json ×1

ngfor ×1

oauth-2.0 ×1