Liberty 伺服器上配置「跨原點資源共用」

您可以在 Liberty 伺服器上啟用 Web 應用程式的「跨原點資源共用 (CORS)」。

關於這項作業

啟用 CORS 將容許 JavaScript 用戶端對 Liberty 伺服器上的應用程式提出要求,即使用戶端和伺服器位於兩個不同的網域也一樣。 Web 瀏覽器會因「相同來源」原則而防止這些要求。

程序

  1. 確定伺服器配置具有已部署應用程式所需的所有特性,例如 servlet-3.0jaxrs-1.1等。 此外,請確定所部署應用程式的埠與使用者登錄設定正確。
  2. 將 CORS 服務設定新增至 server.xml 檔。 cors 元素定義 domain中所設定 URL 的 CORS 設定。

範例

以下是 Web 應用程式的 CORS 配置範例,其位於環境定義根目錄 sampleApp/path


<cors domain="/sampleApp/path"
      allowedOrigins="https://alice.com:8090"
      allowedMethods="GET, DELETE, POST"
      allowedHeaders="accept, MyRequestHeader1"
      exposeHeaders="MyResponseHeader1"
      allowCredentials="true"
      maxAge="3600" />

以下是 RESTful 端點 /ibm/api/collective 的 CORS 配置範例。 這個設定適用於開頭為 /ibm/api/collective 的所有端點路徑,其中包括 ibm/api/collective/docs


<cors domain="/ibm/api/collective"
      allowedOrigins="https://alice.com:8090"
      allowedMethods="GET, DELETE, POST"
      allowedHeaders="accept, MyRequestHeader1"
      exposeHeaders="MyResponseHeader1"
      allowCredentials="true"
      maxAge="3600" />