小编Jas*_*son的帖子

在Angular 6中处理来自WebApi的400错误请求(使用HttpClient)

下面是一个Asp.net Core WebAPI,当说用户正在尝试重复注册时,它会返回错误请求,并带有关于其参数的错误详细信息。

public async Task<IActionResult> Register([FromBody] RegisterModel registerModel)
    {
        if (ModelState.IsValid)
        {
            var user = new ApplicationUser
            {
                //TODO: Use Automapper instead of manual binding  

                UserName = registerModel.Username,
                FirstName = registerModel.FirstName,
                LastName = registerModel.LastName,
                Email = registerModel.Email
            };
            var identityResult = await this.userManager.CreateAsync(user, registerModel.Password);
            if (identityResult.Succeeded)
            {
                await signInManager.SignInAsync(user, isPersistent: false);
                return Ok(GetToken(user));
            }
            else
            {
                Console.WriteLine("Errors are : "+ identityResult.Errors);
                return BadRequest(identityResult.Errors);
            }
        }
        return BadRequest(ModelState);
Run Code Online (Sandbox Code Playgroud)

响应在Angular端进行如下处理:

user.service.ts

register(user: User) {
   // let headers = new Headers({ 'Content-Type': …
Run Code Online (Sandbox Code Playgroud)

access-token jwt asp.net-web-api asp.net-core angular

7
推荐指数
2
解决办法
5480
查看次数

Angular 6:找不到类型为“object”的不同支持对象“[object Object]”。NgFor 只支持绑定到 Iterables,比如 Arrays

我有一个组件从资产文件夹加载本地 json 文件(仅包含名称)。由于 HttpClient 负责将数据格式化为 json,所以这里没有使用 map。

import { Component } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators'

 export type cont= {name: string};

@Component({
  selector: 'my-app',
  template: `
    1st List
    <ul>
      <li *ngFor="let contact of contacts | async">{{contact.name}}</li>
    </ul>
    2st List
    <ul>
      <li *ngFor="let contact of contacts2 | async">{{contact.name}}</li>
    </ul>
    `
})
export class AppComponent {;
  contacts: Observable<cont[]>;
  contacts2: Observable<cont[]>;
  constructor (http: HttpClient) {
    this.contacts = http.get<cont[]>('http://localhost:4200/assets/contacts.json'); …
Run Code Online (Sandbox Code Playgroud)

angular angular-httpclient angular6

4
推荐指数
1
解决办法
7219
查看次数