error:SyntaxError: Unexpected token g in JSON at position 0

error:SyntaxError: Unexpected token g in JSON at position 0

当我输入字母时出现此错误,如果我输入数字则不会出现。我想知道如何修复它。

Angular代码 auth.service.ts

 refactor(data: string): Observable<any>{
        return this.http.post<any>(apiUrl, data)
          .pipe(
            tap(_ => this.log('refactor')),
            catchError(this.handleError('refactor', []))
          );
      }

component.ts

this.anomtextService.refactor($('#file').val().toString())
         .subscribe(res => {

           $('#textAnom').val(res);

         }, (err) => {
           console.log(err);
           alert(err.error);
         });

     }

API 休息 JAVA

@PostMapping(path = "/rename")
    public String getPathByDoc(@RequestBody String text) {

        return text;

    }

token.interceptor.ts

    import { Injectable } from '@angular/core';
import {
    HttpRequest,
    HttpHandler,
    HttpEvent,
    HttpInterceptor,
    HttpResponse,
    HttpErrorResponse
} from '@angular/common/http';
import { Observable, throwError } from 'rxjs';
import { map, catchError } from 'rxjs/operators';
import { Router } from '@angular/router';

@Injectable()
export class TokenInterceptor implements HttpInterceptor {

  constructor(private router: Router) {}
  intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

      const token = localStorage.getItem('token');
      if (token) {
        request = request.clone({
          setHeaders: {
            'Authorization': 'Bearer ' + token
          }
        });
      }
      if (!request.headers.has('Content-Type')) {
        request = request.clone({
          setHeaders: {
            'content-type': 'application/json'
          }
        });
      }
      request = request.clone({
        headers: request.headers.set('Accept', 'application/json')
      });
      return next.handle(request).pipe(
        map((event: HttpEvent<any>) => {
          if (event instanceof HttpResponse) {
            console.log('event--->>>', event);
          }
          return event;
        }),
        catchError((error: HttpErrorResponse) => {
          console.log(error);
          if (error.status === 401) {
            this.router.navigate(['login']);
          }
          if (error.status === 400) {
            alert(error.error);
          }
          return throwError(error);
        }));
  }
}

可能是我的毛病,整天拉屎。

非常感谢你能给我的帮助。

他们给我的可能解决方案: Angulars HttpClient 期望您的响应类型为 json 并尝试对其进行解析。您可以告诉 HttpClient 接受纯文本。

但是不知道怎么解决

Angulars HttpClient 期望您的响应类型为 json 并尝试解析它。 您可以告诉 HttpClient 接受纯文本。

refactor(data: string): Observable<any>{
    const headers = new HttpHeaders().set('Content-Type', 'text/plain; charset=utf-8');

    return this.http.post(apiUrl, data,{headers,responseType: 'text'})
          .pipe(
            tap(_ => this.log('refactor')),
            catchError(this.handleError('refactor', []))
          );
}