Beispiel #1
0
        public async Task ProxyServer_BeforeRequest(object sender, Titanium.Web.Proxy.EventArguments.SessionEventArgs e)
        {
            SessionListItem item = addSession(e);

            if (e.HttpClient.Request.HasBody)
            {
                e.HttpClient.Request.KeepBody = true;
                byte[] data = await e.GetRequestBody();

                //if (e.HttpClient.Request.Url.Contains("vk.com"))
                //{
                //    var str = Encoding.UTF8.GetString(data);
                //    if (str.Contains("привет"))
                //    {
                //        str = str.Replace("привет", "пока");
                //        data = Encoding.UTF8.GetBytes(str);
                //        e.SetRequestBody(data);
                //    }
                //}

                item.Update(e);

                if (item == SelectedSession)
                {
                    selectedSessionChanged();
                }
            }
        }
Beispiel #2
0
        public async Task ProxyServer_BeforeResponse(object sender, Titanium.Web.Proxy.EventArguments.SessionEventArgs e)
        {
            SessionListItem item = null;

            if (sessionDictionary.TryGetValue(e.HttpClient, out item))
            {
                item.Update(e);
            }
            if (item != null)
            {
                if (e.HttpClient.Request.HasBody)
                {
                    e.HttpClient.Response.KeepBody = true;
                    await e.GetResponseBody();

                    item.Update(e);

                    if (item == SelectedSession)
                    {
                        selectedSessionChanged();
                    }
                }
            }
        }