public static bool IsWebFile(Stream stream)
 {
     using (EndianReader reader = new EndianReader(stream, EndianType.BigEndian))
     {
         return(WebHeader.IsWebHeader(reader));
     }
 }
Esempio n. 2
0
 public static bool IsWebFile(Stream stream, long offset, long size)
 {
     using (PartialStream bundleStream = new PartialStream(stream, offset, size))
     {
         using (EndianReader reader = new EndianReader(bundleStream, EndianType.BigEndian))
         {
             return(WebHeader.IsWebHeader(reader));
         }
     }
 }
Esempio n. 3
0
 public RequestOptions(string url, bool isPost = false)
 {
     Uri = new Uri(url);
     if (isPost)
     {
         Method = "POST";
     }
     else
     {
         Method = "GET";
     }
     KeepAlive   = false;
     ContentType = "application/json;utf-8";
     WebHeader.Add("Accept-Language", "zh-CN,zh;q=0.9");
     WebHeader.Add("Accept-Encoding", "gzip, deflate");
 }
        /// <summary>
        /// Creates the web response for the current web request.
        /// </summary>
        private void CreateWebResponse()
        {
            // Get the context
            HttpRequestResponseContext context = ((ScriptingHttpState)HttpStateData).HttpRequestResponseContext;

            // Create a web response
            context.Request.WebResponse = new WebResponse();

            Cookies cookies = new Cookies();
            cookies.AddCookies(HttpResponseData.CookieCollection);

            // Fill the web response
            context.Request.WebResponse.Cookies = cookies.GetCookies();

            context.Request.WebResponse.ErrorMessage = string.Empty;
            context.Request.WebResponse.GetHtmlXml = HttpResponseData.GetHtmlXml;
            context.Request.WebResponse.HttpBody = HttpResponseData.HttpBody;

            context.Request.WebResponse.ResponseHttpSettings = context.Request.RequestHttpSettings.Clone();

            ArrayList headers = new ArrayList();
            //int i = 0;
            foreach ( DictionaryEntry de in HttpResponseData.ResponseHeaderCollection )
            {
                string name = Convert.ToString(de.Key);
                switch ( name.ToLower(System.Globalization.CultureInfo.InvariantCulture) )
                {

                    case "accept":
                        break;
                    case "connection":
                        break;
                    case "content-length":
                        context.Request.WebResponse.ResponseHttpSettings.ContentLength = HttpStateData.HttpResponse.ContentLength;
                        break;
                    case "content-type":
                        context.Request.WebResponse.ResponseHttpSettings.ContentType = HttpStateData.HttpResponse.ContentType;
                        break;
                    case "character set":
                        context.Request.WebResponse.CharacterSet = HttpStateData.HttpResponse.CharacterSet;
                        break;
                    case "content encoding":
                        context.Request.WebResponse.ContentEncoding = HttpStateData.HttpResponse.ContentEncoding;
                        break;
                    case "date":
                        break;
                    case "expect":
                        break;
                    case "host":
                        break;
                    case "if-modified-since":
                        context.Request.WebResponse.ResponseHttpSettings.IfModifiedSince = HttpStateData.HttpResponse.LastModified;
                        break;
                    case "last modified":
                        context.Request.WebResponse.ResponseHttpSettings.IfModifiedSince = HttpStateData.HttpResponse.LastModified;
                        break;
                    case "protocol version":
                        context.Request.WebResponse.Version = HttpResponseData.Version;
                        break;
                    case "range":
                        break;
                    case "referer":
                        break;
                    case "response uri":
                        context.Request.WebResponse.ResponseUri = HttpStateData.HttpResponse.ResponseUri.ToString();
                        break;
                    case "status":
                        break;
                    case "status code":
                        context.Request.WebResponse.StatusCode = HttpResponseData.StatusCode;
                        break;
                    case "status description":
                        context.Request.WebResponse.StatusDescription = HttpStateData.HttpResponse.StatusDescription;
                        break;
                    case "transfer-encoding":
                        break;
                    case "user-agent":
                        break;
                    default:
                        WebHeader header = new WebHeader();
                        header.Name = name;
                        header.Value = Convert.ToString(de.Value);
                        headers.Add(header);
                        break;
                }
            }

            context.Request.WebResponse.ResponseHttpSettings.AdditionalHeaders = (WebHeader[])headers.ToArray(typeof(WebHeader));
            context.Request.WebResponse.Scripts = HttpResponseData.Scripts.ToArray();
        }