javafx.scene.web.WebEngine загружает URL-адрес за прокси-сервером, не отображая контент [дубликат]

Из определения Prototype framework String.isJSON здесь

/**
   *  String#isJSON() -> Boolean
   *
   *  Check if the string is valid JSON by the use of regular expressions.
   *  This security method is called internally.
   *
   *  ##### Examples
   *
   *      "something".isJSON();
   *      // -> false
   *      "\"something\"".isJSON();
   *      // -> true
   *      "{ foo: 42 }".isJSON();
   *      // -> false
   *      "{ \"foo\": 42 }".isJSON();
   *      // -> true
  **/
  function isJSON() {
    var str = this;
    if (str.blank()) return false;
    str = str.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@');
    str = str.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']');
    str = str.replace(/(?:^|:|,)(?:\s*\[)+/g, '');
    return (/^[\],:{}\s]*$/).test(str);
  }

, так что это версия, которая может использоваться при передаче строкового объекта

function isJSON(str) {
    if ( /^\s*$/.test(str) ) return false;
    str = str.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@');
    str = str.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']');
    str = str.replace(/(?:^|:|,)(?:\s*\[)+/g, '');
    return (/^[\],:{}\s]*$/).test(str);
  }

function isJSON(str) {
    if ( /^\s*$/.test(str) ) return false;
    str = str.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@');
    str = str.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']');
    str = str.replace(/(?:^|:|,)(?:\s*\[)+/g, '');
    return (/^[\],:{}\s]*$/).test(str);
  }

console.log ("this is a json",  isJSON( "{ \"key\" : 1, \"key2@e\" : \"val\"}" ) )

console.log("this is not a json", isJSON( "{ \"key\" : 1, \"key2@e\" : pippo }" ) )

2
задан Sergey Grinev 11 January 2013 в 20:20
поделиться

3 ответа

0
ответ дан Rastislav Komara 19 August 2018 в 09:59
поделиться
  • 1
    + 1-Эй, спасибо, может быть, это может быть полезно. попробуем это сегодня! – RubyDubee 14 September 2009 в 10:09
  • 2
    Ссылка сломана. Вот почему связь ответа с внешним сайтом никогда не является хорошей идеей. – Sedrick 23 May 2018 в 13:43

Поскольку ссылка в принятом ответе больше не работает, я добавляю здесь код настройки прокси:

    System.setProperty("http.proxyHost", "myproxyhost");
    System.setProperty("http.proxyPort", "80");
4
ответ дан Sergey Grinev 19 August 2018 в 09:59
поделиться

По умолчанию JavaFX автоматически использует настройки прокси-сервера Operating Systems, это контролируется с помощью значков Java Preferences или Java Control Panel на вашем Mac или ПК.

Вы также можете установить в Java Java proxy, но я этого не пробовал.

Если вы пытаетесь запросить внешний ресурс из неподписанного приложения, Java может запросить у вас (пользователя) разрешение при его запуске.

1
ответ дан Steven Herod 19 August 2018 в 09:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: