0

Hi I have integrated Swagger API to represent all Rest Easy API to the application developer(Abdroid, iOS). For that I have done some configuration in standalone.xml file(/opt/wildfly/standalone/configuration) in wildfly server as given below for access control origin setting.

Here I have added filter and response header in existing undertow module.

<subsystem xmlns="urn:jboss:domain:undertow:1.2">
   <buffer-cache name="default"/>
     <server name="default-server">
         <http-listener name="default" socket-binding="http"/>
               <host name="default-host" alias="localhost">
                   <location name="/" handler="welcome-content"/>
                   <filter-ref name="server-header"/>
                   <filter-ref name="x-powered-by-header"/>
                   <filter-ref name="Access-Control-Allow-Origin"/>
                   <filter-ref name="Access-Control-Allow-Methods"/>
                   <filter-ref name="Access-Control-Allow-Headers"/>
              <filter-ref name="Access-Control-Allow-Credentials"/>
                    <filter-ref name="Access-Control-Max-Age"/>
                </host>
            </server>
            <servlet-container name="default">
                <jsp-config/>
                <websockets/>
            </servlet-container>
            <handlers>
                <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
            </handlers>
            <filters>
                <response-header name="server-header" header-name="Server" header-value="WildFly/8"/>
                <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
                <response-header name="Access-Control-Allow-Origin" header-name="Access-Control-Allow-Origin" header-value="*"/>
                <response-header name="Access-Control-Allow-Methods" header-name="Access-Control-Allow-Methods" header-value="GET, POST, OPTIONS, PUT"/>
                <response-header name="Access-Control-Allow-Headers" header-name="Access-Control-Allow-Headers" header-value="accept, authorization, content-type, x-requested-with"/>
                <response-header name="Access-Control-Allow-Credentials" header-name="Access-Control-Allow-Credentials" header-value="true"/>
                <response-header name="Access-Control-Max-Age" header-name="Access-Control-Max-Age" header-value="1"/>
            </filters>
        </subsystem>

When I hit the swagger url(http://host/application/dist/index.html), it is working on local machine but when some other machine hit the same url, it is showing error like "not have appropriate access-control-origin setting".

Fruchtzwerg
  • 10,999
  • 12
  • 40
  • 49
Ranjit Soni
  • 594
  • 6
  • 19

0 Answers0