【问题标题】:Alternate to $Resource in Angular 2, 400 bad request在 Angular 2 中替代 $Resource,400 错误请求
【发布时间】:2017-01-02 18:42:29
【问题描述】:

Angular 1 服务 我正在将我的应用程序从 angular 1 迁移到 angular 2。 这个 Angular 1 服务调用工作正常并得到响应

 "getUserResource": function () {
                        return $resource(basePath + "api/v3/user/GetUser/:name", { name: "@name",password: "@password"}, {
                            get: { method: "GET", isArray: true }
                        });
                    },

Angular 2 这个 Angular 2 调用没有击中 web Api 控制器,它给出了 400 bad request 错误

getUserResourcePromise(): Promise<User[]> {
        let params = new URLSearchParams();
        params.set('name', 'test');
        params.set('password', 'test');
        return this.http.get(this.baseUrl + 'api/v3/user/GetUser/:name', { search: params.toString(), headers: this.headers })
            .toPromise()
            .then(response => response.json().data as User[])
            .catch(this.handleError);
    }

Angular 1 与 Angular 2 的网址

http://localhost:58999/api/v3/user/GetUser/test?password=test(angular 1 url)
http://localhost:58999/api/v3/user/GetUser/:name?name=test&password=test(angular 2 url)

网络 API 控制器

谁能告诉我如何制作 angular 2 URL 来点击这个控制器,我需要做些什么改变?

 [RoutePrefix("api/v3/user")]

 [HttpGet]
     [ResponseType(typeof(UsersModel))]
     [Route("GetUser/{name}")]
     public async Task<IHttpActionResult> GetUser(string name,string password) {
     }

【问题讨论】:

标签: http angular asp.net-web-api


【解决方案1】:

我猜你必须硬编码你的网址......

getUserResourcePromise(): Promise<User[]> {
        let querystring = 'test?password=test'
        return this.http.get(this.baseUrl + 'api/v3/user/GetUser/'+queryString, {headers: headers})
            .toPromise()
            .then(response => response.json().data as User[])
            .catch(this.handleError);
    }

如果您使用变量,queryString 当然看起来像这样:

let queryString = username+'?password'+password

【讨论】:

    猜你喜欢
    • 2016-12-29
    • 2020-06-01
    • 2017-03-29
    • 1970-01-01
    • 2017-09-10
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    相关资源
    最近更新 更多