📄 ssfx.core.debug.js
字号:
requestTimeout: 408,
conflict: 409,
gone: 410,
lengthRequired: 411,
preconditionFailed: 412,
requestEntityTooLarge: 413,
requestUriTooLong: 414,
unsupportedMediaType: 415,
requestedRangeNotSatisfiable: 416,
expectationFailed: 417,
internalServerError: 500,
notImplemented: 501,
badGateway: 502,
serviceUnavailable: 503,
gatewayTimeout: 504,
httpVersionNotSupported: 505
}
ScriptFX.Net.HTTPStatusCode.createEnum('ScriptFX.Net.HTTPStatusCode', false);
////////////////////////////////////////////////////////////////////////////////
// ScriptFX.Net.HTTPRequestState
ScriptFX.Net.HTTPRequestState = function() { };
ScriptFX.Net.HTTPRequestState.prototype = {
inactive: 0,
inProgress: 1,
completed: 2,
aborted: 3,
timedOut: 4
}
ScriptFX.Net.HTTPRequestState.createEnum('ScriptFX.Net.HTTPRequestState', false);
////////////////////////////////////////////////////////////////////////////////
// ScriptFX.Net.HTTPVerb
ScriptFX.Net.HTTPVerb = function() { };
ScriptFX.Net.HTTPVerb.prototype = {
GET: 0,
POST: 1,
PUT: 2,
DELETE: 3
}
ScriptFX.Net.HTTPVerb.createEnum('ScriptFX.Net.HTTPVerb', false);
////////////////////////////////////////////////////////////////////////////////
// ScriptFX.Net.IHTTPResponse
ScriptFX.Net.IHTTPResponse = function() { };
ScriptFX.Net.IHTTPResponse.prototype = {
get_contentLength : null,
get_contentType : null,
get_headers : null,
get_request : null,
get_statusCode : null,
get_statusText : null,
get_timeStamp : null,
getHeader : null,
getObject : null,
getText : null,
getXML : null
}
ScriptFX.Net.IHTTPResponse.createInterface('ScriptFX.Net.IHTTPResponse');
////////////////////////////////////////////////////////////////////////////////
// ScriptFX.Net.HTTPRequest
ScriptFX.Net.HTTPRequest = function ScriptFX_Net_HTTPRequest() {
}
ScriptFX.Net.HTTPRequest.createRequest = function ScriptFX_Net_HTTPRequest$createRequest(uri, verb) {
Debug.assert(!String.isNullOrEmpty(uri));
var request = new ScriptFX.Net.HTTPRequest();
if (!uri.startsWith('{')) {
request._uri = uri;
}
else {
var uriData = ScriptFX.JSON.deserialize(uri);
request._uri = uriData['__uri'];
Debug.assert(!String.isNullOrEmpty(request._uri));
if (uriData['__nullParams']) {
request._transportType = uriData['__transportType'];
}
else {
request._transportType = Type.getType(uriData['__transportType']);
delete uriData.__uri;
delete uriData.__transportType;
request._transportParameters = uriData;
}
Debug.assert((request._transportType) && ScriptFX.Net.HTTPTransport.isAssignableFrom(request._transportType));
}
request._verb = verb;
return request;
}
ScriptFX.Net.HTTPRequest.createURI = function ScriptFX_Net_HTTPRequest$createURI(uri, parameters) {
var sb = new StringBuilder(uri);
if (uri.indexOf('?') < 0) {
sb.append('?');
}
var parameterIndex = 0;
var $dict1 = parameters;
for (var $key2 in $dict1) {
var entry = { key: $key2, value: $dict1[$key2] };
if (parameterIndex) {
sb.append('&');
}
sb.append(entry.key);
sb.append('=');
sb.append(encodeURIComponent(entry.value.toString()));
parameterIndex++;
}
return sb.toString();
}
ScriptFX.Net.HTTPRequest.prototype = {
_uri: null,
_verb: 0,
_content: null,
_headers: null,
_userName: null,
_password: null,
_transportType: null,
_transportParameters: null,
_timeout: 0,
_callback: null,
_context: null,
_state: 0,
_transport: null,
_response: null,
_timeStamp: null,
get_content: function ScriptFX_Net_HTTPRequest$get_content() {
return this._content;
},
set_content: function ScriptFX_Net_HTTPRequest$set_content(value) {
Debug.assert(this.get_verb() === ScriptFX.Net.HTTPVerb.POST);
Debug.assert(this._state === ScriptFX.Net.HTTPRequestState.inactive);
this._content = value;
return value;
},
get_hasCredentials: function ScriptFX_Net_HTTPRequest$get_hasCredentials() {
return (!String.isNullOrEmpty(this._userName));
},
get_hasHeaders: function ScriptFX_Net_HTTPRequest$get_hasHeaders() {
return (this._headers);
},
get_headers: function ScriptFX_Net_HTTPRequest$get_headers() {
if (!this._headers) {
this._headers = {};
}
return this._headers;
},
get_password: function ScriptFX_Net_HTTPRequest$get_password() {
return this._password;
},
get_response: function ScriptFX_Net_HTTPRequest$get_response() {
Debug.assert(this._state === ScriptFX.Net.HTTPRequestState.completed);
return this._response;
},
get_state: function ScriptFX_Net_HTTPRequest$get_state() {
return this._state;
},
get_timeout: function ScriptFX_Net_HTTPRequest$get_timeout() {
return this._timeout;
},
set_timeout: function ScriptFX_Net_HTTPRequest$set_timeout(value) {
this._timeout = value;
return value;
},
get_timeStamp: function ScriptFX_Net_HTTPRequest$get_timeStamp() {
return this._timeStamp;
},
get__transport: function ScriptFX_Net_HTTPRequest$get__transport() {
return this._transport;
},
get__transportParameters: function ScriptFX_Net_HTTPRequest$get__transportParameters() {
return this._transportParameters;
},
get_transportType: function ScriptFX_Net_HTTPRequest$get_transportType() {
return this._transportType;
},
get_URI: function ScriptFX_Net_HTTPRequest$get_URI() {
return this._uri;
},
get_userName: function ScriptFX_Net_HTTPRequest$get_userName() {
return this._userName;
},
get_verb: function ScriptFX_Net_HTTPRequest$get_verb() {
return this._verb;
},
abort: function ScriptFX_Net_HTTPRequest$abort() {
if (this._state === ScriptFX.Net.HTTPRequestState.inProgress) {
ScriptFX.Net.HTTPRequestManager._abort(this, false);
}
},
dispose: function ScriptFX_Net_HTTPRequest$dispose() {
if (this._transport) {
this.abort();
}
},
invoke: function ScriptFX_Net_HTTPRequest$invoke(callback, context) {
Debug.assert(this._state === ScriptFX.Net.HTTPRequestState.inactive);
this._callback = callback;
this._context = context;
ScriptFX.Application.current.registerDisposableObject(this);
ScriptFX.Net.HTTPRequestManager._beginInvoke(this);
},
_invokeCallback: function ScriptFX_Net_HTTPRequest$_invokeCallback() {
ScriptFX.Application.current.unregisterDisposableObject(this);
if (this._transport) {
this._transport.dispose();
this._transport = null;
}
if (this._callback) {
this._callback.invoke(this, this._context);
this._callback = null;
this._context = null;
}
},
_onAbort: function ScriptFX_Net_HTTPRequest$_onAbort() {
this._state = ScriptFX.Net.HTTPRequestState.aborted;
this._invokeCallback();
},
_onActivate: function ScriptFX_Net_HTTPRequest$_onActivate(transport) {
this._transport = transport;
this._state = ScriptFX.Net.HTTPRequestState.inProgress;
this._timeStamp = new Date();
},
_onCompleted: function ScriptFX_Net_HTTPRequest$_onCompleted(response) {
this._response = response;
this._state = ScriptFX.Net.HTTPRequestState.completed;
this._invokeCallback();
},
_onTimeout: function ScriptFX_Net_HTTPRequest$_onTimeout() {
this._state = ScriptFX.Net.HTTPRequestState.timedOut;
this._invokeCallback();
},
setContentAsForm: function ScriptFX_Net_HTTPRequest$setContentAsForm(data) {
Debug.assert(data);
this.get_headers()['Content-Type'] = 'application/x-www-form-urlencoded';
var sb = new StringBuilder();
var firstValue = true;
var $dict1 = data;
for (var $key2 in $dict1) {
var e = { key: $key2, value: $dict1[$key2] };
if (!firstValue) {
sb.append('&');
}
sb.append(e.key);
sb.append('=');
sb.append(encodeURIComponent(e.value.toString()));
firstValue = false;
}
this.set_content(sb.toString());
},
setContentAsJSON: function ScriptFX_Net_HTTPRequest$setContentAsJSON(data) {
Debug.assert(data);
this.get_headers()['Content-Type'] = 'text/json';
this.set_content(ScriptFX.JSON.serialize(data));
},
setCredentials: function ScriptFX_Net_HTTPRequest$setCredentials(userName, password) {
Debug.assert(!String.isNullOrEmpty(userName));
Debug.assert(!String.isNullOrEmpty(password));
this._userName = userName;
this._password = password;
}
}
////////////////////////////////////////////////////////////////////////////////
// ScriptFX.Net.HTTPRequestManager
ScriptFX.Net.HTTPRequestManager = function ScriptFX_Net_HTTPRequestManager() {
}
ScriptFX.Net.HTTPRequestManager.add_requestInvoking = function ScriptFX_Net_HTTPRequestManager$add_requestInvoking(value) {
ScriptFX.Net.HTTPRequestManager.__requestInvoking = Delegate.combine(ScriptFX.Net.HTTPRequestManager.__requestInvoking, value);
}
ScriptFX.Net.HTTPRequestManager.remove_requestInvoking = function ScriptFX_Net_HTTPRequestManager$remove_requestInvoking(value) {
ScriptFX.Net.HTTPRequestManager.__requestInvoking = Delegate.remove(ScriptFX.Net.HTTPRequestManager.__requestInvoking, value);
}
ScriptFX.Net.HTTPRequestManager.add_requestInvoked = function ScriptFX_Net_HTTPRequestManager$add_requestInvoked(value) {
ScriptFX.Net.HTTPRequestManager.__requestInvoked = Delegate.combine(ScriptFX.Net.HTTPRequestManager.__requestInvoked, value);
}
ScriptFX.Net.HTTPRequestManager.remove_requestInvoked = function ScriptFX_Net_HTTPRequestManager$remove_requestInvoked(value) {
ScriptFX.Net.HTTPRequestManager.__requestInvoked = Delegate.remove(ScriptFX.Net.HTTPRequestManager.__requestInvoked, value);
}
ScriptFX.Net.HTTPRequestManager.get_online = function ScriptFX_Net_HTTPRequestManager$get_online() {
return window.navigator.onLine;
}
ScriptFX.Net.HTTPRequestManager.get_timeoutInterval = function ScriptFX_Net_HTTPRequestManager$get_timeoutInterval() {
return ScriptFX.Net.HTTPRequestManager._timeoutInterval;
}
ScriptFX.Net.HTTPRequestManager.set_timeoutInterval = function ScriptFX_Net_HTTPRequestManager$set_timeoutInterval(value) {
ScriptFX.Net.HTTPRequestManager._timeoutInterval = value;
return value;
}
ScriptFX.Net.HTTPRequestManager._abort = function ScriptFX_Net_HTTPRequestManager$_abort(request, timedOut) {
var transport = request.get__transport();
if (transport) {
transport.abort();
ScriptFX.Net.HTTPRequestManager._endInvoke(request, null, timedOut);
}
}
ScriptFX.Net.HTTPRequestManager.abortAll = function ScriptFX_Net_HTTPRequestManager$abortAll() {
var requests = ScriptFX.Net.HTTPRequestManager._activeRequests;
ScriptFX.Net.HTTPRequestManager._activeRequests = [];
var $enum1 = requests.getEnumerator();
while ($enum1.moveNext()) {
var request = $enum1.get_current();
ScriptFX.Net.HTTPRequestManager._abort(request, false);
}
}
ScriptFX.Net.HTTPRequestManager._beginInvoke = function ScriptFX_Net_HTTPRequestManager$_beginInvoke(request) {
if (ScriptFX.Net.HTTPRequestManager.__requestInvoking) {
var e = new ScriptFX.Net.PreHTTPRequestEventArgs(request);
ScriptFX.Net.HTTPRequestManager.__requestInvoking.invoke(null, e);
if (e.get_isSuppressed()) {
request._onCompleted(e.get_response());
return;
}
}
var transportType = request.get_transportType();
if (!transportType) {
transportType = ScriptFX.Net._xmlhttpTransport;
}
var transport = new transportType(request);
request._onActivate(transport);
ScriptFX.Net.HTTPRequestManager._activeRequests.add(request);
transport.invoke();
if (((ScriptFX.Net.HTTPRequestManager._timeoutInterval) || (request.get_timeout())) && (!ScriptFX.Net.HTTPRequestManager._appIdleHandler)) {
ScriptFX.Net.HTTPRequestManager._appIdleHandler = Delegate.create(null, ScriptFX.Net.HTTPRequestManager._onApplicationIdle);
ScriptFX.Application.current.add_idle(ScriptFX.Net.HTTPRequestManager._appIdleHandler);
}
}
ScriptFX.Net.HTTPRequestManager._endInvoke = function ScriptFX_Net_HTTPRequestManager$_endInvoke(request, response, timedOut) {
ScriptFX.Net.HTTPRequestManager._activeRequests.remove(request);
if (response) {
request._onCompleted(response);
}
else if (timedOut) {
request._onTimeout();
}
else {
request._onAbort();
}
if (ScriptFX.Net.HTTPRequestManager.__requestInvoked) {
var e = new ScriptFX.Net.PostHTTPRequestEventArgs(request, response);
ScriptFX.Net.HTTPRequestManager.__requestInvoked.invoke(null, e);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -