GET fails with 'android.os.NetworkOnMainThreadException'

Aperta
#111 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
android, javascript
Ambito
mobile, networking

Direzione di ricerca

Inizia riproducendo su Android la richiesta GET dell’issue e confronta il percorso di @nativescript-community/https con core/http. Traccia dove viene instradata la richiesta e identifica perché raggiunge il main thread, quindi verifica che la stessa richiesta venga completata senza NetworkOnMainThreadException e che il comportamento Android esistente rimanga invariato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

I'm testing on Android so I don't know about iOS.

Test code:

import * as HTTP from '@nativescript-community/https';
...
let url = "https://historylines.com/nexus/ttw.jsp?a=add&app=LA&uid=test_fde9f33899e13fcc&drill=Open%20Shooting%20-%20Single%20Target&shots=7";

console.log("logSession: "+url);

HTTP.request({
    url: url,
    method: "GET",
    timeout: 30000
})
.then((response) => {
    let content = response.content.toJSON();

    console.log("logSession response: "+JSON.stringify(content, null, 4));

    if(!content){
        console.error("logSession response is missing content");
        reject("logSession response is missing content");
    }else{
        resolve(content);
    }
})
.catch((err) => {
    console.error("logSession failed, "+err);
    reject(err);
});

When I run this code or similar with core/http, it succeeds. When I put the URL in a web browser, it succeeds. When I run with https, it fails with:

logSession failed, Error: android.os.NetworkOnMainThreadException
Lingua principale
Vue
Stelle
52
Fork
40
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di nativescript-community/https

Tutte le issue di nativescript-community/https

Issue simili

Altre issue su Mobile Dev

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.