public void ProcessRequest(HttpContext context) { Log(); state = string.Empty; deviceId = null; // StringBuilder builder = new StringBuilder(); // builder.AppendFormat("status={0}&key={1}", "pending", "234324sd+=1@3%2~4"); //TextWriter writer = new StringWriter(builder); //context.Response.Write(builder); //context.Response.Status = "OK"; // context.Response.StatusCode = 200; NameValueCollection query = context.Request.QueryString; if (query.Count > 0) { deviceId = query["code"]; } string queryString = CreateQueryString(); SendRequest(queryString); string responseString = ""; if (query["v"] == "2" || query["v"] == "3") { string appId = context.Request.QueryString["appId"]; if (string.IsNullOrEmpty(appId)) { appId = Constants.DefaultAppId; } responseString = V2Handler.ConstructResponse(deviceId, state, appId); } context.Response.Write(responseString); context.Response.StatusCode = 200; context.Response.Cache.SetCacheability(HttpCacheability.NoCache); context.Response.Cache.SetExpires(DateTime.UtcNow); // string logMessage = string.Format("url={0}, UA={1}, response={2}" // , context.Request.RawUrl // , context.Request.UserAgent // , responseString); //Log(logMessage); try { //AddElement(context, responseString); } catch (Exception) { } }
public string GetResponseString(string appId, string deviceId , string locale, bool debug, out TransactionStatus transactionStatus) { transactionStatus = TransactionStatus.Failed; string queryString = CreateQueryString(deviceId); bool isSuccess = false; string responseString = SendRequest(deviceId, queryString, locale, debug, out isSuccess); if (!isSuccess) { if (queryLocalStore) { responseString = V2Handler.ConstructResponse(deviceId, string.Empty, appId, locale, debug, out transactionStatus); } } else { transactionStatus = TransactionStatus.Completed; } return(responseString); }