Adobe AIR: обработка объектов JSON с сервера

У меня есть скрипт, который извлекает объекты с удаленного сервера через вызов Ajax. Сервер возвращает объекты в нотации JSON.

Однако, в Adobe AIR, существует ограничение на использование eval() по соображениям безопасности. Поэтому я могу получать ответы с удаленного сервера, но не могу превратить их обратно в объекты JavaScript. Есть ли обходной путь для этой проблемы? Я хотел бы использовать JSON для моих JavaScript объектов, так как он может быть использован почти сразу.

Примечание: Я понимаю последствия безопасности для форсирования проблемы, но я буду делать быструю разработку приложений для конкуренции, поэтому программа будет только быстрым прототипом и не будет использоваться для производственных целей. Тем не менее, было бы здорово, если бы была лучшая альтернатива тому, что я пытаюсь сделать сейчас


Обновление:

Спасибо Тео и jsight за их ответы;

Одна важная вещь, которую я узнал сегодня, заключается в том, что я действительно могу использовать библиотеки ActionScript, используя

<script src="lib/myClasses.swf" type="application/x-shockwave-flash"></script>
тег расширен на Adobe AIR. Проверьте ссылку Тео для получения более подробной информации!

javascript   ajax   json   air    

439   5   11:46, 24th August, 2020


Почему я не могу подключиться к моему серверу CAS с Perl AuthCAS?

Я пытаюсь использовать существующий сервер CAS для аутентификации входа в веб-скрипт Perl CGI и использую модуль AuthCAS Perl (v 1.3.1). Я могу подключиться к серверу CAS, чтобы получить билет службы, но когда я пытаюсь подключиться, чтобы проверить билет, мой скрипт возвращается со следующей ошибкой из модуля IO::Socket::SSL:

 500 Can't connect to [CAS Server]:443 (Bad hostname '[CAS Server]') 
 ([CAS Server] substituted for real server name)

Symptoms/Tests:

  1. Если я наберу сгенерированный URL для аутентификации в строке местоположения веб-браузера, он вернется просто отлично с ожидаемым фрагментом XML. Так что это не плохое имя хоста.
  2. Если я создаю сценарий без использования модуля AuthCAS, но используя модуль IO::Socket::SSL непосредственно для запроса сервера CAS для проверки созданного билета службы, сценарий Perl будет работать нормально из командной строки, но не в браузере.
  3. Если я добавлю модуль AuthCAS в скрипт в пункте 2, скрипт больше не будет работать в командной строке и по-прежнему не будет работать в браузере.

Вот голые кости скрипт, который производит ошибку:

#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use AuthCAS;
use CGI::Carp qw( fatalsToBrowser );

my $id = $ENV{QUERY_STRING};
my $q = new CGI;
my $target = "http://localhost/cgi-bin/testCAS.cgi";

my $cas = new AuthCAS(casUrl => 'https://cas_server/cas');

if ($id eq ""){
    my $login_url = $cas->getServerLoginURL($target);
    printf "Location: $login_url\n\n";
    exit 0;
} else {
    print $q->header();
    print "CAS TEST<br>\n";

    ## When coming back from the CAS server a ticket is provided in the QUERY_STRING
    print "QUERY_STRING = " . $id . "</br>\n";
    ## $ST should contain the received Service Ticket
    my $ST = $q->param('ticket');
    my $user = $cas->validateST($target, $ST);  #### This is what fails

    printf "Error: %s\n", &AuthCAS::get_errors() unless (defined $user);
}

Есть идеи, где может быть конфликт?


Сообщение об ошибке поступает от линии непосредственно над Cebjyre фрагмент процитировал именно

$ssl_socket = new IO::Socket::SSL(%ssl_options);

а именно: создание сокета. Все входные параметры верны. Я отредактировал модуль, чтобы ввести отладочные операторы и распечатать все параметры непосредственно перед этим вызовом, и все они в порядке. Похоже, мне придется глубже погрузиться в модуль IO::Socket::SSL.

perl   apache   authentication   ssl   cgi    

486   2   11:45, 24th August, 2020


Конвертер PDF в ePub для iPad/iBooks?

Нашел книгу Д.Пога Snow Leopard(PDF в хорошем качестве), залил в iPad/iBooks, но нет поиска по главам.

Посоветуйте конвертер PDF в ePub.Система №1 OS X 10.6.4 или для WindowsXP sp3

iBooks   iPad    

377   6   11:37, 24th August, 2020


Учитывая N2 CMS, но беспокоился о производительности. Оправдано ли это?

Hy, кто-нибудь работал с системой управления контентом N2( http://www.codeplex.com/n2 ). Если да, то как он работает, производительность мудрая(при большой нагрузке)? Это кажется довольно простым и легким в использовании.

Адриан

asp.net   performance   .net-3.5   content-management-system   n2    

446   5   11:04, 24th August, 2020


C++ ООП и переопределение функции

Есть класс Test, который должен хранить в себе различные параметры некого теста и функцию выполнения этого некого теста (функция Start()). Причем, функция Start не должна хранится непосредственно в этом классе, она должна переопределяться, то есть для каждого экземпляра класса тест она должна быть своей.
На данный момент это выглядит так:

class Test : public QObject
{
    Q_OBJECT
    Q_PROPERTY(QString Name READ getName);
public:
    // constructor
    Test(QString Name, int (*func)())
    {
        this->name = Name;
        this->functionStart = func;
    }
    // property: getting name
    QString getName() const
    {
        return name;
    }
    // start test
    int Start()
    {
        return (*functionStart)();
    }
private:
    int (*functionStart)();
    QString name;
};


И есть класс Pair, который должен хранить в себе список/массив указателей на экземпляры класса Test и еще некие параметры(свойства)

class Pair : public QObject
{
    Q_OBJECT
    Q_PROPERTY(QString Id READ getId);
public:
    // constructor
    Pair(QString Id)
    {
        this->id = Id;
    }
    // property: getting id
    QString getId() const
    {
        return id;
    }
    // array of tests
    QList<Test*> Tests;
private:
    QString id;
};


Предполагается создавать множество потомков класса Pair и внутри этих потомков создавать экземпляры класса Test. Но для того, чтобы передать адрес функции Test1() она должна быть внутри класса static, но в тоже время мне нужно внутри этой функции иметь доступ к свойствам этого класса, например, this->property(«Name»), но внутри static функции this недоступен. Что же делать, как же быть? Третий день бьюсь над этим.

class Pair01 : public Pair
{
public:
    Pair01():Pair("01")
    {
        Tests.append(new Test(tr("Тест 1"), Test1));
        Tests.append(new Test(tr("Тест 2"), Test2));
        Tests.append(new Test(tr("Тест 3"), Test3));
    }
    static int Test1()
    {
        // вот тут адская ЖЕСТЬ! Нужно внутри этой функции получить доступ к this->
    }
    static int Test2()
    {
        return 0;
    }
    static int Test3()
    {
        return 0;
    }
};


А использовать это предполагается так:

Pair01 *pr01 = new Pair01(); // создаю экземпляр класса Pair01
pr01->Tests[0]->Start(); // запускаю первый тест


Надеюсь хоть что-нибудь из этого понятно.

Qt   C++    

299   1   10:59, 24th August, 2020


Быстрый перенос ссылок в Chrome

Часто бывает когда нужно переместиться с одного компьютера на другой. Как всегда открыто 20-30 ссылок в хроме.
Какой есть быстрый способ, перенести все ссылки из одного хрома в другой, желательно в 1-2 клика?

Google   Chrome   Закладки    

305   4   10:47, 24th August, 2020


Как сделать замену строки в функции PowerShell?

Как преобразовать входные параметры функции в правильный тип?

Я хочу вернуть строку, которая имеет часть URL, переданную в нее, удаленную.

Это работает, но он использует жестко закодированную строку:

function CleanUrl($input)
{
    $x = "http://google.com".Replace("http://", "")
    return $x
}

$SiteName = CleanUrl($HostHeader)
echo $SiteName

Это не сработает:

function CleanUrl($input)
{
    $x = $input.Replace("http://", "")
    return $x
}

Method invocation failed because [System.Array+SZArrayEnumerator] doesn't contain a method named 'Replace'.
At M:\PowerShell\test.ps1:13 char:21
+     $x = $input.Replace( <<<< "http://", "")

string   powershell   function   replace    

471   4   10:46, 24th August, 2020


Обзор ICQ клиентов для Андроида

Никто не хочет написать? :)

Android   Мессенджеры    

291   3   10:36, 24th August, 2020


К кому из верстальщиков обратиться?

Не дают публиковать в вакансии (не более 1 в мес), пишу сюда:

Есть сайт Cottage.ru — www.cottage.ru

Cейчас нам фейслифтят логотип, а я немного набрасываю верстку в Photoshop'e (но я не специалист в этом)

Началось все с того, что мы решили открыть раздел «Строительство» который является очень важным и большим и никак не вписывается в сайт.

И я начал его рисовать, постепенно прийдя к тому, что нужна резиновая верстка и упрощение шапки

Но — я не спец в этом деле — не дизайнер и не веб-технолог.

Что нужно:

1) Резиновая верстка и инфо-дизайн раздела «Строительство»
(пример по ссылке — он еще не доработан, показано лишь направление движения)
http://www.cottage.ru/temp/cottage-stroitelstvo.png

2) Резиновая верстка и инфо-дизайн главной страницы Cottage.ru
(пример по ссылке — тоже не доработано, тоже — направление)
http://www.cottage.ru/temp/cottage-main.png

3) Верстку других страниц можно обсудить позже.

Единственное и обязательное требование — максимальное сохранение баннерных площадок портала.

Важно понимание и желание улучшить предложенные макеты и грамотно кроссбраузерно их сверстать.

Деньги и сроки обсуждаются.

Михаил Подрабинек
podrabinek@gmail.com

CSS   HTML    

309   3   10:32, 24th August, 2020


Как я могу отменить регистрацию COM DLL, изначально добавленных с RegSvr32, когда /u arg не работает?

Правильно, изначально бежал:

c:\regsvr32 Amazing.dll

затем (случайно-я мог бы добавить) я должен был запустить его снова, и (действительно) снова, когда были выпущены новые версии 'Amazing.dll'. Да , теперь я знаю, что должен был бежать.:

c:\regsvr32 /u Amazing.dll

заранее-но эй! А я и забыл.

Чтобы перейти к сути дела, когда я добавляю ссылку COM в VS, я вижу 3 экземпляра 'Amazing', все они указывают на одно и то же место (c:\Amazing.dll), запуск regsvr32 /u удаляет одну из ссылок, во второй раз - ничего не делает...

Как мне избавиться от этих ссылок? Я смотрю на сценарий regedit? - Если да - что именно произойдет, если я удалю один из ключей???

Овации

visual-studio   com   regsvr32   dllregistration    

548   3   10:25, 24th August, 2020