Jak dobrać się do user_id/photo_id, aby można było je wykorzystać?

0

Witam jestem początkującym programistą i mam problem, ale może po kolei potrafię się zalogować w api oraz pobrać dane z formularza jest on bez znaczników , tylko jak dobrać się do informacji które on zwraca aby można było je wykorzystać, zna ktoś jakiś kod ? link do api http://www.fotka.pl/api/user/login

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net;
using HtmlAgilityPack;
using System.IO;


namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string url = "http://api.fotka.pl/v2/user/login?";
            CookieContainer cookies = new CookieContainer();
            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
            request.Method = "POST";
            request.CookieContainer = cookies;
            string uzytkownik = "";
            string haslo = "";
            uzytkownik = textBox1.Text;
            haslo = textBox2.Text;

            string postData = "login=" + uzytkownik + "&password=" + haslo;
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);
            request.ContentType = "application/x-www-form-urlencoded";
            request.ContentLength = byteArray.Length;
            Stream dataStream = request.GetRequestStream();
            dataStream.Write(byteArray, 0, byteArray.Length);
            dataStream.Close();
            WebResponse response = request.GetResponse();
            dataStream = response.GetResponseStream();
            StreamReader reader = new StreamReader(dataStream);
            string ResponsefromServer = reader.ReadToEnd();
            richTextBox1.Text=(ResponsefromServer);
            reader.Close();
            ////////////////////////////////////////////////////////////////////////////
            
        
            //////////////////////////////////////////////////////////////////////////////
            dataStream.Close();
            response.Close();


        }
    }
}

dodanie znacznika <code class="csharp"> - @furious programming

0

po co wysyłasz post, jak w api jest co innego? http://www.fotka.pl/api/user/login czytałeś to w ogóle? Po co używasz HttpWebRequest jak później wrzucasz kod strony do webBrowser1. Zrób sobie class do obsługi HTTP, po co pisać to samo po kilka razy.

0

strona mi zwraca różne informacje np user_id,session,login ,foto_id jak te informacje wykorzystać przydałby się jakiś kod np: chciałbym aby w text boxie wyświetlała się informacja pobierana z ciasteczek np:**session_id **lub mój login z tego formularza,dopiero zaczynam przygodę z programowaniem więc proszę o konkretną odpowiedź z wyrozumieniem ,każdy przecież kiedyś zaczynał dodam że przeszukałem internet ale informacje które znalazłem były nie zrozumiałe Pozdrawiam.

0

mam zwróconą stronę bez jakichkolwiek znaczników z moim user_id , Session_id itp: nie potrafię tego wykorzystać,chciałbym pobrać user_id i go gdzieś wyświetlić w textboxie lub w czymś innym zwracam się z prośbą jak to wszystko pobrać i wykorzystać byłbym wdzięczny przynajmniej za jakiś link do strony
albo kod Pozdrawiam;

1

Czyli takie coś? http://www.asp.net/web-api/overview/advanced/calling-a-web-api-from-a-net-client
I przykładowy kod, pewnie nie zadziała od strzała.

         using (var client = new HttpClient())
         {
            client.BaseAddress = new Uri("http://api.fotka.pl/v2/");
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage response = await client.GetAsync("user/login?login=maximinus2&password=testapi");
            if (response.IsSuccessStatusCode)
            {
               // LoginResponse jakas klasa stworzona przez ciebie...
               LoginResponse resp = await response.Content.ReadAsAsync<LoginResponse>();
               Console.WriteLine("{0}\t${1}\t{2}", resp.sessid, resp.foto_id, resp.color);
            }
         }
0

Dzięki Wielkie Spróbuję go wykorzystać ,i zobaczę co będzie się działo.

0

Nareszcie To Rozgryzłem dodaję kod jakby ktoś się głowił tak jak ja ,cały mankament polegał na tym że Strona od Fotki Api wysyła formularz w postaci JSon korzystając z tejże biblioteki mogę wyciągać i przekazywać dalej interesujące mnie rzeczy pragnę również podziękować za poświęcony czas i pomocną dłoń :) można zamknąć :)


namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string url = "http://api.fotka.pl/v2/user/login?";
            CookieContainer cookies = new CookieContainer();
            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
            request.Method = "POST";
            request.CookieContainer = cookies;
            string uzytkownik = "";
            string haslo = "";
            uzytkownik = textBox1.Text;
            haslo = textBox2.Text;

            string postData = "login=" + uzytkownik + "&password=" + haslo;
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);
            request.ContentType = "application/x-www-form-urlencoded";
            request.ContentLength = byteArray.Length;
            Stream dataStream = request.GetRequestStream();
            dataStream.Write(byteArray, 0, byteArray.Length);
            dataStream.Close();
            WebResponse response = request.GetResponse();
            
            
            /// Od Tej linijki Wyciągam Dane Za pomocą Techniki JSON 
            StreamReader oStreamReader =null;
            oStreamReader = new StreamReader(response.GetResponseStream());
            JObject oBject = JObject.Parse(oStreamReader.ReadToEnd());
            richTextBox2.Text = ("ID:" + (string)oBject["id"]);
            dataStream.Close();
            response.Close();

            }
        }
    }

1 użytkowników online, w tym zalogowanych: 0, gości: 1