使用verifyclient解析使用ajax的Coldfusion J2EE会话调用cfc方法

时间:2013-02-06 17:54:33

标签: ajax coldfusion remote-access

我目前正在使用CF会话管理,并一直在调查过渡到使用J2EE会话管理。在我尝试这样做时,对CF cfc远程方法进行的ajax请求(当CFsession管理设置为使用J2EE会话时)无法通过verifyclient授权。当会话管理使用CF会话管理时,以下代码可用。

我的假设是_cf_clientid不再是传递给远程方法的正确值 - 因为它是使用cfid和cftoken生成的。

如何成功实施J2EE会话管理并利用verifyclient实现远程cfc方法?或者可以不做?使用CF标签cfajaxproxy不是一种选择。

下面的示例代码演示了如何使用jQuery ajax来调用带有verifyclient ='true'的远程cfc方法,即使CF文档指出需要使用cfajaxproxy。不是这种情况。 (感谢Ray Camden和DWMommy。)这让我相信,在使用J2EE会话时,可能还有一种解决方法可以实现类似的方法来验证客户端。

提前致谢!

<script src="/plugins/jquery-1.7.2.min.js" type="text/javascript" language="Javascript"></script>
<cfajaximport />
<script>
$(function() {
            $.ajax({
                url: 'test.cfc',    
                type: 'get',
                dataType: 'json',
                data: {
                    method: 'sayHello',
                    yourname: 'Foo'
                    ,_cf_clientid: _cf_clientid
                },
                success: displaySearchResults
            });
});
</script>
<script>
    function displaySearchResults(res){
        $('#searchResults').html( res );
    }
</script>
<div id="searchResults"></div>

test.cfc

component{
    remote any function sayHello ( string yourname = 'anonymous') 
        returnformat='JSON' verifyclient='true'{
        return 'Hello ' & arguments.yourname;
    }
}

0 个答案:

没有答案