From: itozyun Date: Wed, 24 Jun 2015 11:12:09 +0000 (+0900) Subject: Version 0.6.166, fix X.XHR.GadgetProxy. X-Git-Url: http://git.osdn.jp/view?p=pettanr%2FclientJs.git;a=commitdiff_plain;h=1bfbfbb850a390a1c46546d445961966e4cdf063 Version 0.6.166, fix X.XHR.GadgetProxy. --- diff --git a/0.6.x/js/06_net/05_XXHRGadget.js b/0.6.x/js/06_net/05_XXHRGadget.js index d65f2c0..7a9d4d2 100644 --- a/0.6.x/js/06_net/05_XXHRGadget.js +++ b/0.6.x/js/06_net/05_XXHRGadget.js @@ -48,7 +48,7 @@ var X_NET_GIMR_canUse = 5.5 <= X_UA[ 'IE' ] || !X_UA[ 'IE' ], function X_NET_GIMR_detectImageOverIframe(){ var raw = this[ '_rawObject' ], - iwin, ret, n, error, data = null, zero, e; + iwin, ret, n; if( raw ){ iwin = raw.contentWindow || ( raw.contentDocument && raw.contentDocument.parentWindow ) || window.frames[ X_NET_GIMR_iframeName ]; @@ -94,45 +94,14 @@ function X_NET_GIMR_detectImageOverIframe(){ X_NET_GIMR_receivedString = X_Net_GIMR_decodeLocationHash( ret ); }; - ret = X_String_parseTrustedJsonString( X_NET_GIMR_receivedString ); - - + X_NET_GIMRWrapper[ 'asyncDispatch' ]( X_String_parseTrustedJsonString( X_NET_GIMR_receivedString ) ); X_NET_GIMR_receivedString = ''; - - error = ret[ 'errors' ] && ret[ 'errors' ].length; - - switch( !error && X_NET_GIMR_requestOriginal[ 'dataType' ] ){ - case 'json' : - data = X_String_parseTrustedJsonString( ret[ 'json' ] || ret[ 'text' ] || '' ); - break; - }; - - //console.dir( data || ret ); - - X_NET_GIMRWrapper._busy = false; - - if( error || ret[ 'rc' ] < 200 || 400 < ret[ 'rc' ] ){ - e = { - type : X_EVENT_ERROR, - status : ret[ 'rc' ] || ret[ 'code' ] || 400, - 'message' : error && ret[ 'errors' ].join( '\n' ) - }; - } else { - e = { - type : X_EVENT_SUCCESS, - status : ret[ 'rc' ] || 200, - response : data - }; - }; - - e[ 'headers' ] = ret[ 'headers' ]; - - X_NET_GIMRWrapper[ 'asyncDispatch' ]( e ); - //console.dir( e ); + X_NET_GIMRWrapper._busy = false; X_NET_GIMR_timerID = X_NET_GIMR_phase = 0; - X_NET_GIMR_lastHashString = ''; + + X_NET_GIMR_lastHashString = ''; iwin.location.href = X_NET_GIMR_GADGET_URL + '#_recived_'; return X_Callback_UN_LISTEN; @@ -159,8 +128,10 @@ X_TEMP.X_Net_GIMR_init = function(){ X_JSON_stringify( { 'img' : X_URL_toAbsolutePath( X_NET_GIMR_IMAGE_URL ), 'len' : X_NET_GIMR_maxQueryLength, - 'itvl' : 333, - 'gck' : X_UA[ 'Gecko' ] ? 1 : 0 + 'itv' : 333, + 'gck' : X_UA[ 'Gecko' ] ? 1 : 0, + 'err' : X_EVENT_ERROR, + 'suc' : X_EVENT_SUCCESS } ) ), scrolling : 'no', diff --git a/0.6.x/js/06_net/10_XOAuth2.js b/0.6.x/js/06_net/10_XOAuth2.js index 5bb2c1c..fb9206a 100644 --- a/0.6.x/js/06_net/10_XOAuth2.js +++ b/0.6.x/js/06_net/10_XOAuth2.js @@ -55,6 +55,7 @@ X[ 'OAuth2' ] = X_EventDispatcher[ 'inherits' ]( var expires_at; obj = X_Object_clone( obj ); + obj[ 'refreshMargin' ] = obj[ 'refreshMargin' ] || 300000; X_Pair_create( this, obj ); @@ -62,7 +63,7 @@ X[ 'OAuth2' ] = X_EventDispatcher[ 'inherits' ]( obj.updateRequest = X_NET_OAUTH2_updateRequest; if( X_OAuth2_getAccessToken( this ) && ( expires_at = X_OAuth2_getAccessTokenExpiry( this ) ) ){ - if( expires_at < X_Timer_now() + ( obj[ 'refreshMargin' ] || 300000 ) ){ // 寿命が5分を切った + if( expires_at < X_Timer_now() + obj[ 'refreshMargin' ] ){ // 寿命が5分を切った this[ 'refreshToken' ](); } else { obj.oauth2State = 4; @@ -114,7 +115,7 @@ X[ 'OAuth2' ] = X_EventDispatcher[ 'inherits' ]( 'response_type' : 'code', 'client_id' : pair[ 'clientID' ], 'redirect_uri' : pair[ 'redirectURI' ], - 'scope' : ( pair[ 'scopes' ] || []).join(' ') + 'scope' : ( pair[ 'scopes' ] || [] ).join(' ') } ), 'oauthauthorize', @@ -147,8 +148,14 @@ X[ 'OAuth2' ] = X_EventDispatcher[ 'inherits' ]( }; // http://kojikoji75.hatenablog.com/entry/2013/12/15/223839 - X_NET_OAUTH2_authorizationWindow && X_NET_OAUTH2_authorizationWindow.open( 'about:blank', '_self' ).close(); - X_NET_OAUTH2_authorizationWindow = null; + if( X_NET_OAUTH2_authorizationWindow ){ + if( 9 < X_UA[ 'IEHost' ] ){ + X_NET_OAUTH2_authorizationWindow.close(); + } else { + X_NET_OAUTH2_authorizationWindow.open( 'about:blank', '_self' ).close(); + }; + X_NET_OAUTH2_authorizationWindow = null; + }; X_NET_OAUTH2_authorizationTimerID && X_Timer_remove( X_NET_OAUTH2_authorizationTimerID ); X_NET_OAUTH2_authorizationTimerID = 0; @@ -226,7 +233,11 @@ function X_Net_OAuth2_detectAuthPopup(){ pair = X_Pair_get( this ); pair.code = X_URL_ParamToObj( search.slice( 1 ) )[ 'code' ]; - X_NET_OAUTH2_authorizationWindow.open( 'about:blank', '_self' ).close(); + if( 9 < X_UA[ 'IEHost' ] ){ + X_NET_OAUTH2_authorizationWindow.close(); + } else { + X_NET_OAUTH2_authorizationWindow.open( 'about:blank', '_self' ).close(); + }; closed = true; X_Net_OAuth2_authorizationCode( this, pair ); @@ -286,7 +297,7 @@ function X_Net_OAuth2_responceHandler( e ){ }; X_OAuth2_setAccessToken( this, data[ 'access_token' ] || '' ); - X_OAuth2_setRefreshToken( this, data[ 'refresh_token' ] || '' ); + ( !isRefresh || data[ 'refresh_token' ] ) && X_OAuth2_setRefreshToken( this, data[ 'refresh_token' ] || '' ); if( data[ 'expires_in' ] ){ X_OAuth2_setAccessTokenExpiry( this, X_Timer_now() + data[ 'expires_in' ] * 1000 ); @@ -298,8 +309,8 @@ function X_Net_OAuth2_responceHandler( e ){ pair.oauth2State = 4; if( pair.lazyRequests && pair.lazyRequests.length ){ - X_NET_QUEUE_LIST.push.apply( X_NET_QUEUE_LIST, pair.lazyRequests ); - pair.lazyRequests.length = 0; + //X_NET_QUEUE_LIST.push.apply( X_NET_QUEUE_LIST, pair.lazyRequests ); + //pair.lazyRequests.length = 0; }; this[ 'asyncDispatch' ]( { type : X_EVENT_SUCCESS, message : isRefresh ? 'Refresh access token success.' : 'Get new access token success.' } );