Angular клиентский почтовый запрос для Spring boot REST Api - PullRequest
0 голосов
/ 08 марта 2020

Мне нужна ваша помощь для следующего. У меня есть клиентское приложение, использующее Angular 8 и Spring Boot REST Api:

Я вызываю REST Api ниже:

 public resourceUrl = SERVER_API_URL + 'services/uaa-nghiapt/api/register-orders';
  /**
   * This method call rest server for update active as TRUE
   * @param key id of register order
   * @param code active code
   */
  activate(key:string,code:string):Observable<HttpResponse<string>> {
    return this.http.post<HttpResponse<string>>(this.resourceUrl+"/activate",{key:key,code:code});
  }

И это код API отдыха:

  @PostMapping(value = "/register-orders/activate")
    public ResponseEntity<String> registerActivate(@RequestBody Map<String, String> payload) {
        return ResponseEntity.ok(this.registerOrderService.registerActivate(payload));
    }

Я получаю сообщение об ошибке, как показано ниже:

"SyntaxError: Unexpected token v in JSON at position 0
    at JSON.parse (<anonymous>)
    at XMLHttpRequest.onLoad (webpack-internal:///./node_modules/@angular/common/fesm5/http.js:1644:51)
    at ZoneDelegate.invokeTask (webpack-internal:///./node_modules/zone.js/dist/zone.js:422:31)
    at Object.onInvokeTask (webpack-internal:///./node_modules/@angular/core/fesm5/core.js:24730:33)
    at ZoneDelegate.invokeTask (webpack-internal:///./node_modules/zone.js/dist/zone.js:421:60)
    at Zone.runTask (webpack-internal:///./node_modules/zone.js/dist/zone.js:194:47)
    at ZoneTask.invokeTask [as invoke] (webpack-internal:///./node_modules/zone.js/dist/zone.js:497:34)
    at invokeTask (webpack-internal:///./node_modules/zone.js/dist/zone.js:1692:14)
    at XMLHttpRequest.globalZoneAwareCallback (webpack-internal:///./node_modules/zone.js/dist/zone.js:1729:21)"

Теперь я хочу получить тип строки - ответ Api.

, пожалуйста, помогите мне.

спасибо за просмотр

Ответы [ 2 ]

0 голосов
/ 08 марта 2020

Вы не возвращаете json при загрузке весной, а просто текст. Вот почему он дает вам эту ошибку. Попробуйте следующее:

http.post(url, body, {responseType: text'}

0 голосов
/ 08 марта 2020

Вы пытаетесь parse ответить или пытаетесь response.json(). Это не удалось, потому что тип возврата вашего REST Api - String. Удалите синтаксический анализ ответа из кода.

Надеюсь, это будет полезно !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...