无法加载资源:我的wordpress网站上的Safari请求超时

时间:2019-05-29 03:14:23

标签: ajax safari request timeout

我有wordpress网站。最近,我们在ajax请求中遇到了问题。 在网站上,当我单击注册并调用ajax时,我们打开了用于注册的弹出窗口,仅在Safari浏览器中显示“无法加载资源:请求超时。”

我尝试使用async:true,timeout和setTimeout来解决此问题,但没有人工作。

var request = $.ajax({
                url: jobifySettings.homeurl, 
                data: data,
                type: 'POST',
                cache: false
            }).done(function(response) {
                form.find( $( '.woocommerce-error' ) ).remove();

                var $response = $( '#ajax-response' );
                var html = $.parseHTML(response);

                console.log( response );

                $response.append(html);
                error = $response.find( $( '.woocommerce-error' ) );

                if ( error.length > 0 ) {
                    form.prepend( error.clone() );
                    $response.html('');

                    e.preventDefault();
                }
            });

1 个答案:

答案 0 :(得分:0)

首先,我想说要在ajax设置(您说过尝试过)中将async设置为true,因为这将使Safari保持连接打开状态,直到您收到响应(然后将其关闭)为止。

但是,如果这对您来说不起作用,则可以尝试在htaccess文件中添加跨域的“ CORS”标头(标头设置Access-Control-Allow-Methods:“ *”)。如果您在CORS方面遇到问题,此troubleshooting link可能会有所帮助。

引用链接:(以防将来中断)

<ifmodule mod_headers.c="">
   SetEnvIf Origin "^(.*\.domain\.com)$" ORIGIN_SUB_DOMAIN=$1
   Header set Access-Control-Allow-Origin "%{ORIGIN_SUB_DOMAIN}e" env=ORIGIN_SUB_DOMAIN
   Header set Access-Control-Allow-Methods: "*"
   Header set Access-Control-Allow-Headers: "Origin, X-Requested-With, Content-Type, Accept, Authorization"
</ifmodule>