首頁 >web前端 >js教程 >如何解決跨域AJAX請求中「Origin is not allowed by Access-Control-Allow-Origin」錯誤?

如何解決跨域AJAX請求中「Origin is not allowed by Access-Control-Allow-Origin」錯誤?

Linda Hamilton
Linda Hamilton原創
2024-12-14 05:02:091001瀏覽

How to Resolve the

跨域AJAX 問題:「Origin is not allowed by Access-Control-Allow-Origin」

進行跨域PhAjax封裝的Sencha Touch 2 中請求時,您可能會遇到錯誤,指出Access-Control-Allow-Origin 不允許來源。此問題的出現​​是由於瀏覽器的安全機制防止跨站請求偽造。

解決方案:

最直接的解決方案是修改伺服器的回應:新增 Access-Control-Allow-Origin 標頭。在 PHP 中,可以使用以下程式碼來完成此操作:

<?php header('Access-Control-Allow-Origin: *'); ?>

此標頭配置允許跨域 Ajax 請求。

但是,使用通配符 (*) 進行存取控制- Allow-Origin 可能會讓您的使用者面臨安全風險。因此,建議使用限制性更強的表達式將特定域列入白名單,例如:

<?php header('Access-Control-Allow-Origin: http://example.com') ?>

或者,您可以在Apache 配置或htaccess 檔案中設定A​​ccess-Control-Allow-Origin 標頭。

透過實現適當的回應頭配置,可以解決「Origin is not allowed by Access-Control-Allow-Origin」問題並啟用跨域Ajax溝通。

以上是如何解決跨域AJAX請求中「Origin is not allowed by Access-Control-Allow-Origin」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn