简体   繁体   English

Angular - 语法错误:意外的标记“<”,“<div id="text_translate"><p> 这是部署在 AWS Amplify 上的 Angular 应用程序</p><p>该应用程序已成功部署,但呈现白屏,并且在控制台上我收到此消息:</p><p> <a href="https://i.stack.imgur.com/dYSXk.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/dYSXk.png" alt="在此处输入图像描述"></a></p><p> 但我不知道如何解决。</p><hr><p> 这是服务提供者:</p><pre> import { Inject, Injectable } from '@angular/core'; import { CONFIG_TOKEN, UserService, EuiAppConfig, UserDetails, UserPreferences, I18nService, } from '@eui/core'; import { HttpClient } from '@angular/common/http'; import { Observable, of, zip } from 'rxjs'; import { switchMap } from 'rxjs/operators'; @Injectable({ providedIn: 'root', }) export class AppStarterService { defaultUserPreferences: UserPreferences; constructor( protected userService: UserService, protected i18nService: I18nService, @Inject(CONFIG_TOKEN) private config: EuiAppConfig, protected http: HttpClient, ) { } start(): Observable<any> { return zip( this.initUserService().pipe( switchMap((userStatus) => { console.log(userStatus); return this.i18nService.init(); }), ), ); } /** * Fetches user details, * create user: UserState object * then initialise to the UserService on run time */ initUserService(): Observable<any> { return zip( this.fetchUserDetails(), ).pipe( switchMap(([userDetails]) => this.userService.init(userDetails))); } /** * Fetches user details */ private fetchUserDetails(): Observable<UserDetails> { const moduleCoreApi = this.config.modules.core; const url = `${moduleCoreApi.base}${moduleCoreApi.userDetails}`; const user = { userId: 'anonymous' }; if (;url) { return of(user). } return this.http;get<UserDetails>(url); } }</pre><p> 从该代码来看,这是“ <strong>const moduleCoreApi = this.config.modules.core;</strong> ”和“ <strong>moduleCoreApi.base</strong> ”部分</p><pre>import { ModulesConfig } from '@eui/core'; export const MODULES: ModulesConfig = { core: { base: '/api', } };</pre><p> 这是<strong>environment.prod.ts</strong></p><pre> import { EuiEnvConfig } from '@eui/core'; export const environment: EuiEnvConfig = { production: true, enableDevToolRedux: false, envDynamicConfig: { uri: '/assets/env-json-config.json', deepMerge: true, merge: ['modules'], }, };</pre><p> 从该代码中,这是<strong>env-json-config.json</strong></p><pre> { "modules": { "core": { "userDetails": "/user-details" } } }</pre></div>

[英]Angular - SyntaxError: Unexpected token '<', "<!DOCTYPE "... is not valid JSON

This is an Angular application deployed on AWS Amplify这是部署在 AWS Amplify 上的 Angular 应用程序

The app is deployed successfully, however it renders a white screen, and on the console I receive this message:该应用程序已成功部署,但呈现白屏,并且在控制台上我收到此消息:

在此处输入图像描述

But I don't know how to solve it.但我不知道如何解决。


This is the service provider:这是服务提供者:

import { Inject, Injectable } from '@angular/core';
import {
    CONFIG_TOKEN,
    UserService,
    EuiAppConfig,
    UserDetails,
    UserPreferences,
    I18nService,
} from '@eui/core';
import { HttpClient } from '@angular/common/http';
import { Observable, of, zip } from 'rxjs';
import { switchMap } from 'rxjs/operators';

@Injectable({
    providedIn: 'root',
})
export class AppStarterService {
    defaultUserPreferences: UserPreferences;

    constructor(
        protected userService: UserService,
        protected i18nService: I18nService,
        @Inject(CONFIG_TOKEN) private config: EuiAppConfig,
        protected http: HttpClient,
    ) {
    }

    start(): Observable<any> {

        return zip(
            this.initUserService().pipe(
                switchMap((userStatus) => {
                    console.log(userStatus);
                    return this.i18nService.init();
                }),
            ),
        );
    }

    /**
     * Fetches user details,
     * create user: UserState object
     * then initialise to the UserService on run time
     */
    initUserService(): Observable<any> {
        return zip(
            this.fetchUserDetails(),
        ).pipe(
            switchMap(([userDetails]) => this.userService.init(userDetails)));
    }

    /**
     * Fetches user details
     */
    private fetchUserDetails(): Observable<UserDetails> {
        const moduleCoreApi = this.config.modules.core;
        const url = `${moduleCoreApi.base}${moduleCoreApi.userDetails}`;
        const user = { userId: 'anonymous' };

        if (!url) {

            return of(user);
        }
        return this.http.get<UserDetails>(url);
    }
}

And from that code, this is the " const moduleCoreApi = this.config.modules.core; " and the " moduleCoreApi.base " part从该代码来看,这是“ const moduleCoreApi = this.config.modules.core; ”和“ moduleCoreApi.base ”部分

import { ModulesConfig } from '@eui/core';

export const MODULES: ModulesConfig = {
    core: {
        base: '/api',
    }
};

This is the environment.prod.ts这是environment.prod.ts

import { EuiEnvConfig } from '@eui/core';

export const environment: EuiEnvConfig = {
    production: true,
    enableDevToolRedux: false,
    envDynamicConfig: {
        uri: '/assets/env-json-config.json',
        deepMerge: true,
        merge: ['modules'],
    },
};

And from that code, this the env-json-config.json从该代码中,这是env-json-config.json

{
    "modules": {
        "core": {
            "userDetails": "/user-details"
        }
    }
}

The issue has been solved thanks to @Harun Yilmaz by updating the api endpoint to this:感谢@Harun Yilmaz,通过将 api 端点更新为:

return this.http.get(url,{responseType: 'text'});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 NextJS Jest SyntaxError:意外的令牌“导出” - NextJS Jest SyntaxError: Unexpected token 'export' Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 当试图从 api 路由中的 s3 中提取数据时 - Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 when trying to pull data from s3 in an api route 未捕获的语法错误:Gcloud 中 app.js 中的意外标记“<” - Uncaught SyntaxError: Unexpected token '<' in app.js in Gcloud Firebase 云函数部署错误 - SyntaxError: Unexpected token '?' - Firebase Cloud Functions Deploy Error- SyntaxError: Unexpected token '?' 我想用令牌重置密码但是 => SyntaxError: await is only valid in async function - i want to reset password with token but => SyntaxError: await is only valid in async function 无法从源加载函数定义:无法从函数源生成清单:SyntaxError:意外的标记“。” - Failed to load function definition from source: Failed to generate manifest from function source: SyntaxError: Unexpected token '.' “JSON 中的意外令牌}”(通过 Zapier 连接的 Firestore) - "Unexpected token } in JSON" (Firestore connecting through Zapier) AWS CDK:AWS-ec2 SyntaxError:意外的令牌“。” 更新节点后 - AWS CDK: AWS-ec2 SyntaxError: Unexpected token '.' after update node 搜索到 Cloud Run 实例错误的 Google Cloud Secret:“SyntaxError: Unexpected token ':'” - Google Cloud Secret hunted to Cloud Run Instance Error: "SyntaxError: Unexpected token ':'" AWS Amplify:DevTools 无法加载 SourceMap:JSON 中的意外令牌 < position 0 - AWS Amplify: DevTools failed to load SourceMap: Unexpected token < in JSON at position 0
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM