Kullanıcı Giriş Formu
I/flutter ( 7931): {data: [{id: 1, GirisKontrol: 1, adsoyad: Ferhat Bektaş, gsm: 00000, personel: 1, firmaID: 1, yetkiID: 1, birimID: 1, grupno: 3, resim: https://www.sendeoyla.com/assets/img/noavatar.png}]}
bu konu hala güncel arkadaşlar.
pluscoder
hatanın sebebi şu
response.statusCode == 200
bu kısmı
reponse.statusCode == 200
olarak değiştir. Bu şekilde kullandığın yerleri değiştirirsen sorun gidecektir.
response değişkeni json.decode(reponse.body) tutuyor. status code body’de değil. get metodunun döndüğü response’da tutuluyor.
- Edited
Merhaba ;
evet orayı atlamışım ama sorun ordan da kaynaklı değil. düzenlemeyi yaptım json ve map doğru response.body yi ekrana print edebilyorum ama json a convert ederken aşağıdaki hatayı alıyorum.
NoSuchMethodError: Class ‘_InternalLinkedHashMap<String, dynamic>’ has no instance getter ‘body’.
var reponse = await http.get(Uri.parse(urL));
var response = json.decode(reponse.body);
print(response);
bu işlemde print ettiği değer : {data: [{id: 0, GirisKontrol: 0, adsoyad: , gsm: , personel: , firmaID: 0, yetkiID: 0, birimID: 0, grupno: 0, resim: }]}
Aşağıdaki işlemde print(result) dediğimde ise NoSuchMethodError: Class ‘_InternalLinkedHashMap<String, dynamic>’ has no instance getter ‘body’. bu hatayı veriyor.
var reponse = await http.get(Uri.parse(urL));
var response = json.decode(reponse.body);
if (reponse.statusCode == 200) {
var result = welcomeFromJson(response.body);
**print(result);**
var girisKontrol = result.data[0].girisKontrol;
if (girisKontrol != "0") {
print('Başarısız !');
} else {
print(result.data[0].adsoyad);
}
} else {
print(response.statusCode);
}
konuyla ilgili şöyle bir yazı buldum ama nasıl bir değişiklikten bahsettiğini tam anlamadım.
biraz kurcaladım ve aşağıdaki şekilde çözdüm arkadaşlar.
hatam şuymuş, zaten burda gelen body yi json a çevirip bir de var result = welcomeFromJson(response.body); burda bir convert işlemi yapmaya çalışırken hata veriyormuş. üstteki jsona convert olayını devre dışı bıraktım,
var result = welcomeFromJson(reponse.body);
burayı da bu şekilde düzenledim.
var reponse = await http.get(Uri.parse(urL));
//var response = json.decode(reponse.body);
yeni sorum şu (:
şimdi giriş yaptım sisteme ben, karşılığında bir oturumID ve kullanıcı adı gibi değerlerim var ve bunları projemin tamamında kullanabileceğim session gibi bir değişkene aktarmak istiyorum.
nasıl yapabilirim?
pluscoder Merhaba.
Arkadaşın verdiği örnek gibi localStorage kullanılması bence şart diğer türlü işlem yaparsınız ama sayfalar arası geçiş lerde bile sorun yasayabilirsiniz.