如何在angular 2中将字符串作为HTTP有效负载传递?

时间:2019-04-09 22:04:56

标签: angular typescript http request

我遇到的问题是我正在将字符串对象传递给http请求,但是当我在chrome中检查网络标签时,我的有效载荷不是字符串,并且API失败。

我曾尝试传递一个“用户名”作为有效负载,当我在chrome中检查“网络”标签时,有效负载仍然不是字符串。

post(url: string, requestBody: any) {

        if (requestBody == null || requestBody === undefined) {
            requestBody = "dummytext";
        }
         return this.http.post(url, requestBody, {
            observe: 'response',
            responseType: 'json' 
        }).pipe(catchError((err: HttpErrorResponse) => {
            this.handleHttpErrors(err);
            return Observable.throw(err);
        }));
    }

在请求有效负载中,我看到:testUser 我应该看到的是:“ testUser” 我先谢谢你们!

1 个答案:

答案 0 :(得分:1)

我根本看不出API为何会引号的任何原因-如果您可以控制引号,那么最好不要更改此代码。

如果不是,则可以将请求正文定义为

Traceback (most recent call last):
  File "script1.py", line 50, in <module>
    your_main_program(sys.argv)
  File "script1.py", line 15, in your_main_program
    num2 = int(sys.argv[2])
ValueError: invalid literal for int() with base 10: 'a'calls

其中应包含引号。