Esempio n. 1
0
        static public JObject PostJson(string Uri, JObject post)
        {
            JObject rj = new JObject();

            try
            {
                WebRequest request = WebRequest.Create(Uri);
                request.Method      = "POST";
                request.ContentType = "application/json";
                using (var stream = new StreamWriter(request.GetRequestStream()))
                {
                    stream.Write(post);
                }

                var response = (HttpWebResponse)request.GetResponse();

                var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();

                response.Close();

                rj = JObject.Parse(responseString);
            }
            catch (Exception ex)
            {
                Ret_info err = new Ret_info();
                err.B_result = false; err.S_error = ex.ToString();
                return(JObject.FromObject(err));
            }
            return(rj);
        }
Esempio n. 2
0
        protected void Button1_Click(object sender, EventArgs e)
        {
            TextBox2.Text = "";
            try
            {
                Db db = new Db();
                db.S_long     = Util_l.To64(TextBox1.Text);
                db.S_short    = "00";
                db.User_id    = HttpContext.Current.Request.AnonymousID;
                db.View_count = 0;

                JObject ret = Util_l.PostJson(Request.Url.GetLeftPart(UriPartial.Authority) + VirtualPathUtility.ToAbsolute("~/api/Default/"), JObject.FromObject(db));

                if (ret != null)
                {
                    Ret_info ret_info = ret.ToObject <Ret_info>();
                    if (ret_info.B_result)
                    {
                        if (ret_info.Db_list.Count > 0)
                        {
                            TextBox2.Text = Request.Url.GetLeftPart(UriPartial.Authority) + "/" + ret_info.Db_list[0].S_short;
                        }
                    }
                    else
                    {
                        TextBox2.Text = ret_info.S_error;
                    }
                }
            }
            catch (Exception ex)
            {
            }

            TextBox2.Visible = true;
        }
Esempio n. 3
0
        // получение списка всех ссылок пользователя
        public async Task <Ret_info> Get(string id)
        {
            Ret_info ret = new Ret_info();

            ret = await db.Get(id, "", true, false);

            return(ret);
        }
Esempio n. 4
0
        // получение короткой ссылки по имени
        public async Task <HttpResponseMessage> Get(string id, string id1)
        {
            // id- идентификатор пользователя id1-короткя ссылка
            Ret_info ret = new Ret_info();

            ret = await db.Get(id, Util_l.From64(id1), false, true);

            if (ret.Db_list.Count > 0)
            {
                //Если есть запись перенаправляем на 1
                var response = Request.CreateResponse(HttpStatusCode.Moved);
                response.Headers.Location = new Uri(Util_l.From64(ret.Db_list[0].S_long));
                return(response);
            }
            else
            {
                var response = Request.CreateResponse(HttpStatusCode.NotFound);
                return(response);
            }
        }
Esempio n. 5
0
        public void LoadDb()
        {
            try
            {
                Label1.Text = "";

                JObject ret = Util_l.GetJson(Request.Url.GetLeftPart(UriPartial.Authority) + "/api/Default/" + HttpContext.Current.Request.AnonymousID);

                if (ret != null)
                {
                    Ret_info ret_info = ret.ToObject <Ret_info>();

                    if (ret_info.B_result)
                    {
                        if (ret_info.Db_list.Count > 0)
                        {
                            List <Db_view1> v_list = new List <Db_view1>();
                            foreach (Db db in ret_info.Db_list)
                            {
                                Db_view1 v1 = new Db_view1();
                                v1.S_short    = Request.Url.GetLeftPart(UriPartial.Authority) + "/" + db.S_short;
                                v1.S_long     = Util_l.From64(db.S_long);
                                v1.View_count = db.View_count;
                                v_list.Add(v1);
                            }
                            GridView1.DataSource = v_list;
                            GridView1.DataBind();
                        }
                    }
                    else
                    {
                        Label1.Text = ret_info.S_error;
                    }
                }
            }
            catch (Exception ex)
            {
                Label1.Text = ex.ToString();
            }
        }