Android web

0

Witam, mega problem chce i musze zrobic apke ktora bedzie się laczyc z http://damianchodorek.com/2015/08/09/kurs-android-async-task-web-service-rest-11/wiem i nie moge zrobic wybierania danych, logowania itd. Probowalem na php pierwszy lepszy tutorial i jakos chodzilo ("http://damianchodorek.com/2015/08/09/kurs-android-async-task-web-service-rest-11/"). Próbowałem też przerobic kod tak pod swoja strone ale nic nie pobiera a juz o wysylaniu to nie marze nawet. Jeżeli ktoś może pomoc podlinkowac jakis tutorial ktorego gdzies przeoczyłem albo da jakies cenne wskazówki to bede bardzo wdzięczny.
Pozdrawiam

1

...

Probowalem na php pierwszy lepszy tutorial i jakos chodzilo ("http://damianchodorek.com/2015[...]ync-task-web-service-rest-11/").

??

Możesz napisać CO MASZ ? jakie API wystawia aplikacja w django ? REST ? SOAP ? domyślam się że REST

najbardziej prymitywny sposób zawołania zasobu po HTTP

		StringBuilder result = new StringBuilder();
		URL url = new URL("http://www.interia.pl");
		HttpURLConnection conn = (HttpURLConnection) url.openConnection();
		conn.setRequestMethod("GET");
		BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
		String line;
		while ((line = rd.readLine()) != null) {
			result.append(line);
		}
		rd.close();

		System.out.println(result.toString());

Dodatkowo, w twoim pytaniu brakuje jednej ważnej rzeczy **co ty chcesz tak zrobić, konkretnie **

0

Tak mam Resta, chce po prostu zrobic apke do tej strony, typu logowanie, rejstracja dodawanie posta i przegladanie dodanych juz wczesniej postow. Probowałem to robić za pomoca JSON.

1

Tak mam Resta, chce po prostu zrobic apke do tej strony, typu logowanie, rejstracja dodawanie posta i przegladanie dodanych juz wczesniej postow. Probowałem to robić za pomoca JSON.

Nie pomagasz mi ...

Znasz lokalizacje i znasz API, jaki więc masz problem ? pokaż nam jakiego REST CALLa nie potrafisz wykonać.

Podałeś jakiś tutorial z przykładowym endpointem http://damianchodorek.com/cat/2
używając normalnego REST clienta to będzie wyglądać tak

    DefaultHttpClient httpclient = new DefaultHttpClient();
   
    HttpHost target = new HttpHost("damianchodorek.com", 80, "http");
  
    HttpGet getRequest = new HttpGet("cat/2");
 
    HttpResponse httpResponse = httpclient.execute(target, getRequest);
  • nie wiem czy się skompiluje, poskładałem to na szybko, ale powinno działać.

*rest client o którym wspomniałem.
http://alvinalexander.com/java/java-apache-httpclient-restful-client-examples

0

skorzystaj z tego.
http://square.github.io/retrofit/

masz miliony tutoriali w internetach.

Co to znaczy że próbowałeś z JSON korzystać?

0
   @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ((Button) findViewById(R.id.start_button))
                .setOnClickListener(new View.OnClickListener() {
                                        @Override
                                        public void onClick(View v) {
                                            new WebServiceHandler()
                                                    .execute("www.cos.pl/api/offers.json");
                                        }
                });
    }

    private class WebServiceHandler extends AsyncTask<String, Void, String> {

        private ProgressDialog dialog = new ProgressDialog(MainActivity.this);

        @Override
        protected void onPreExecute() {

            dialog.setMessage("Czekaj...");
            dialog.show();
        }

     
        @Override
        protected String doInBackground(String... urls) {

            try {
         
                URL url = new URL(urls[0]);
                HttpURLConnection connection = (HttpURLConnection) url
                        .openConnection();
                connection.setReadTimeout(10000 /* milliseconds */);
                connection.setConnectTimeout(15000 /* milliseconds */);

                connection.setDoOutput(true);

                connection.setRequestProperty("Content-Type",
                        "application/json");
       
                connection.setRequestMethod("POST");

                JSONObject data = new JSONObject();
                data.put("email", ((EditText) findViewById(R.id.req_name)).getText().toString());
                data.put("offe", ((EditText) findViewById(R.id.editText)).getText().toString());
             
                BufferedWriter writer = new BufferedWriter(
                        new OutputStreamWriter(connection.getOutputStream(),
                                "UTF-8"));
                writer.write(data.toString());
                writer.close();

   
                if (connection.getResponseCode() != 200) {
                    throw new Exception("Bad Request");
                }

       
                InputStream in = new BufferedInputStream(
                        connection.getInputStream());

       return streamToString(in);

            } catch (Exception e) {
               
                Log.d(MainActivity.class.getSimpleName(), e.toString());
                return null;
            }

        }

Mam coś takiego i jakos to nie dziala, nie moge nic dodać.

0

Nie nie leci zaden wyjatek, druga sprawa nie moge nic ze strony wyciągnąć . Tutaj co wysietla sie w przegladarce {"count":1,"next":null,"previous":null,"results":[{"pk":1,"title":"Krak","author":"Admin1","date_added": w apce nie moge nic z tego wyswietlic

0

problem jest z ze strony www już to poprawiłem. A jak wygląda temat logowania? Jak to zrobić żeby stworzyć jakaś sesje tak abym użytkownik mógł dostać się tam gdzie wymagane są uprawnienia?

0

a skąd ja mam wiedzieć jakiej autoryzacji wymaga Twoja strona internetowa. Zazwyczaj autoryzacja po rescie leci w nagłówku ale ciężko mi wywróżyć co jest na stronie COS- u :P

0
wiiesiiek napisał(a):

problem jest z ze strony www już to poprawiłem. A jak wygląda temat logowania? Jak to zrobić żeby stworzyć jakaś sesje tak abym użytkownik mógł dostać się tam gdzie wymagane są uprawnienia?

A wiesz że są różne sposoby autoryzowania ? masz tam oautha ? co to jest ? Mozesz nam podac te stronę ?

0

Tutaj jest problem gdyż strone nie tworzyłem ja, na razie nie ma oautha, ale ma sie pojawic na dniach. Pytam bo chciałbym mieć juz jakis zarys zeby np sprawdzic na innej stronce ktora np stworze u siebie na próbe, cos prostego na servletach z wyciagniem z MySQL.

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