При использовании cf.query и cf.http обнаружена неверная конструкция CFML - PullRequest
0 голосов
/ 29 августа 2011

Я пытаюсь узнать cf.http и cf.query из здесь .

Я попробовал следующий код:

<cfscript>
    result = CF.http({method:"get", url:"http://google.com" });
</cfscript>
<cfdump var="#result#">

Но я получаю ошибку:

В строке 2 в столбце 33 обнаружена неверная конструкция CFML.

К вашему сведению: моя версия сервера Coldfusion: 9,0,1,274733

Что быбыть проблемой?

Ответы [ 3 ]

7 голосов
/ 29 августа 2011

Проверьте документы ColdFusion: http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSe9cbe5cf462523a0693d5dae123bcd28f6d-7ff8.html и это сообщение в блоге .

Нет префикса CF, это объект с состоянием, созданный с использованием ключевого слова new,и нет синтаксиса структурного литерала в конструкторе - просто передайте пары имя-значение.

<cfscript>
httpService = new http(url="http://www.google.com", method="get");
result = httpService.send().getPrefix();
writeDump(result);
</cfscript>
3 голосов
/ 29 августа 2011

Как упомянул Питер, предоставленный вами код представляет собой путаницу некоторого примера кода ACTIONSCRIPT, смешанного с CFML. Это никогда не сработает.

Страница, на которую вы указываете в документах, посвящена написанию ActionScript на стороне сервера. Если это именно то, что вы пытаетесь сделать (я подозреваю, что нет), то вам нужно выполнить остальные документы, начиная с этого пункта http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-5df0.html.

Если вы просто пытаетесь научиться использовать Http.cfc и Query.cfc, вам следует взглянуть на правильную часть документации: http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSe9cbe5cf462523a0693d5dae123bcd28f6d-8000.html

Но что бы вы ни делали, вы не можете смешивать ActionScript и CFML в одном и том же файле.

0 голосов
/ 20 ноября 2011

Re: «Неправильная конструкция CFML».Стоит отметить, что это:

http({method:"get", url:"http://google.com" });

должно быть так:

http(method:"get", url:"http://google.com");

или это

http(argumentCollection={method="get", url="http://google.com"});

Вы можете определять структуры, используя {key:"value"}, {key="value"} и {"key"="value"}.

(Если вы заключите ключ в кавычки, он будет чувствителен к регистру при выводе или сериализации)

Вы можете вызывать методы, используя function("value"), function(key:"value"), function(key="value") и function(key1={key2="value2"})

Если вы хотите вложить структуры, вы должны использовать стиль {key="value"} или {"key"="value"}.например.{"key1"={key2="value2"}}

Вы можете даже смешивать массивы и структуры.{key1={"key2"=["a","b","c"]}}

В блоге Бена Наделя подводится итог.

http://www.bennadel.com/blog/1993-Using-Dynamic-Keys-In-ColdFusion-9-s-Implicit-Struct-Creation.htm

...