Dart HttpRequest Небезопасный пользовательский агент - PullRequest
0 голосов
/ 23 апреля 2020

Итак, у меня есть этот кусок кода в java

HttpURLConnection conn = (HttpURLConnection) new URL(str_url).openConnection();
conn.setInstanceFollowRedirects(true);
conn.setDoOutput(true);
conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11");

conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("charset", "utf-8");
conn.setRequestProperty("Content-Length", Integer.toString(postDataLength));
conn.setUseCaches(false);
try (DataOutputStream wr = new DataOutputStream(conn.getOutputStream())) {
    wr.write(postData);
}

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));

String res = "";
String inputLine;
while ((inputLine = br.readLine()) != null)
    res += inputLine + "\n";
br.close();

И он отлично работает. Но я пытаюсь реализовать его в дротике, с той лишь разницей, что сейчас я использую метод GET, а не POST, и у меня есть этот код:

import 'dart:html';

void main() async
{
    var req = HttpRequest();
    req.open('GET', 'https://www.google.com/');
    req.setRequestHeader('User-Agent', 'Webkit/Blink');

    await req.onLoadEnd.first;
    print(req.responseText);
}

, что выглядит нормально для меня, я имею в виду, я использую другой пользовательский агент, но я пробовал с сотнями, и он все еще не работает! это ошибка, которую я получаю: main.dart:7 Refused to set unsafe header "User-Agent"

Я компилирую и запускаю свой код с расширением vscode Dart

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...