OSDN Git Service

Version 0.6.130, fix X.Net & X.Audio.
[pettanr/clientJs.git] / 0.6.x / js / 06_net / 01_XNetXHR.js
index f488350..71d4770 100644 (file)
@@ -105,7 +105,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                        async    = obj[ 'async' ],\r
                                        user     = obj[ 'user' ],\r
                                        password = obj[ 'password' ],\r
-                                       headers  = obj[ 'headers' ],\r
+                                       headers  = obj[ 'headers' ] || {},\r
                                        postbody = obj[ 'postbody' ],\r
                                        timeout  = obj[ 'timeout' ] || 20000,\r
                                        temp;\r
@@ -168,6 +168,11 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                // http://www.quirksmode.org/blog/archives/2005/09/xmlhttp_notes_r_1.html\r
                                // raw.overrideMimeType()\r
                                if( !X_Net_XHR_ACTIVE_X && X.Type.isFunction( raw.setRequestHeader ) ){\r
+                                       \r
+                                       // http://nakigao.sitemix.jp/blog/?p=2040\r
+                                       // SafariでHTTP/412のエラー\r
+                                       headers[ 'If-Modified-Since' ] = ( new Date ).toUTCString();\r
+                                       \r
                                        for( p in headers ){\r
                                                if( X_EMPTY_OBJECT[ p ] ) continue;\r
                                                raw.setRequestHeader( p, headers[ p ] ); // Opera8.01+, MSXML3+\r