2017-08-10 8 views
0

を逃すことができ--prod私は自分のアプリケーションの外部REST APIを呼び出すと私はいつもngのビルドは、原点は(404禁断)

はヘッダ要求されたリソース(403禁止)上に存在する、起源を許可取得しています。

私はtomcatサーバーが起点を許可するように構成しました。

ngの

は、それが正常に動作しているが、

後ngのビルドが

を--prod --proxy-設定proxy.conf.json

を果たします

この問題が発生しています。なぜそれはng serveで動作していて、ng buildで動作していないのですか?私のサーバー側では問題ありません。そうでなければ、サーバーやhttp要求などで動作しません。ここで何ができますか?

web.xmlの

<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
     version="3.0" metadata-complete="true"> 

    <display-name>Apache TomEE</display-name> 

    <servlet> 
    <servlet-name>LoaderServlet</servlet-name> 
    <servlet-class>org.apache.tomee.loader.LoaderServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 

    <servlet> 
    <servlet-name>ServerServlet</servlet-name> 
    <servlet-class>org.apache.openejb.server.httpd.ServerServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>ServerServlet</servlet-name> 
    <url-pattern>/ejb/*</url-pattern> 
    </servlet-mapping> 

    <servlet> 
    <servlet-name>InstallerServlet</servlet-name> 
    <servlet-class>org.apache.tomee.webapp.installer.InstallerServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>InstallerServlet</servlet-name> 
    <url-pattern>/installer</url-pattern> 
    </servlet-mapping> 

    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    </welcome-file-list> 

    <security-constraint> 
    <web-resource-collection> 
     <web-resource-name>ServerServlet</web-resource-name> 
     <url-pattern>/ejb/*</url-pattern> 
    </web-resource-collection> 
<!--<auth-constraint> 
    <role-name>developers</role-name> 
</auth-constraint>--> 
    </security-constraint> 
    <security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Static Content</web-resource-name> 
     <url-pattern>/webjars/*</url-pattern> 
    </web-resource-collection> 
    </security-constraint> 
    <security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Application</web-resource-name> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>tomee-admin</role-name> 
    </auth-constraint> 
    </security-constraint> 

<login-config> 
    <auth-method>BASIC</auth-method> 
    </login-config> 
    <security-role> 
    <role-name>tomee-admin</role-name> 
    </security-role> 

</web-app> 
+0

'ng build --prod'をエラーなしでビルドすることはできますか? – vel

+0

実際に私はこれを正確に使用しています: "build": "ng build --prod --output-path = dist/client"そしてそれは動作します –

+0

上記のweb.xmlの設定を見てください –

答えて

0

私のweb.xmlファイル。

<?xml version='1.0' encoding='UTF-8' ?> 
    <!-- was: <?xml version="1.0" encoding="ISO-8859-1"?> --> 
    <web-app 
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
     version="3.0"> 
     <servlet> 
      <servlet-name>TestStatusServlet</servlet-name> 
      <servlet-class>com.qnium.yuuwallet.TestStatusServlet</servlet-class> 
     </servlet> 
     <servlet-mapping> 
      <servlet-name>TestStatusServlet</servlet-name> 
      <url-pattern>/test-status/*</url-pattern> 
     </servlet-mapping> 

    <!-- Enable for Jetty --> 
     <filter> 
      <filter-name>cors-filter-jetty</filter-name> 
      <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class> 
      <init-param> 
       <param-name>allowedOrigins</param-name> 
       <param-value>*</param-value> 
      </init-param> 
      <init-param> 
       <param-name>allowedMethods</param-name> 
       <param-value>GET,POST,HEAD</param-value> 
      </init-param> 
      <init-param> 
       <param-name>allowedHeaders</param-name> 
       <param-value>X-Requested-With,Content-Type,Accept,Origin</param-value> 
      </init-param> 
     </filter> 
     <filter-mapping> 
      <filter-name>cors-filter-jetty</filter-name> 
      <url-pattern>/*</url-pattern> 
     </filter-mapping> 

    </web-app> 
関連する問題