0

なぜこれを取得しているのかわかりません。ブラウズすると

http://www.phillipsenn.com/Matrix/JSON/Upload/Upload.cfc?method=Save&Item=1

その後、コンポーネントは正しく動作します。しかし、これを行うと、RDS パスワードを要求されます。

!function($, window, undefined) {
    var local = {};
    local.data = {};
    local.type= 'post',
        local.dataType= 'json',
        local.data.method = 'Save';
    local.data = {
        Item : 'Item One'
    }

    var myPromise = $.ajax('Upload.cfc',local);
    myPromise.done(function(result) {
        console.log('success!');
    });

    myPromise.fail(function(A,B,C) {
        $('body').append(A.responseText);
        console.log(B);
        console.log(C);
    });
}(jQuery, window);

最後に、私のコンポーネントは次のとおりです。

<cfcomponent>
<cffunction name="Save" access="remote" output="yes">
    <cfargument name="Item">
    <cfset var local = {}>

    <cfquery datasource="#Application.Datasource#" username="#Application.Username#" password="#Application.Password#">
    INSERT INTO lru.Clip(ClipDesc) VALUES('test')
    </cfquery>
    #arguments.Item#
</cffunction>
</cfcomponent>
4

1 に答える 1

3

フィル、

どういうわけか、あなたの ajax コードが「メソッド」URL パラメータなしで CFC を呼び出していると思います。これを行うと、CF は、「CFC エクスプローラー」を試してみようと考えています。これは、CFC の記述のような Javadoc を作成するきちんとした小さなツールです。次のように、URL パラメーターを指定せずに CFC を参照するだけで、(ローカルでも) 表示できます。

http://www.phillipsenn.com/Matrix/JSON/Upload/Upload.cfc

したがって、Ajax呼び出しで何かを変更する必要があります...問題は最後のsetステートメントだと思います...

local.data = {
    Item : 'Item One'
}

その上の「データ」セットを...「アイテム」と呼ばれる単一の構造体に置き換えています。このようにすると、「メソッド」というキーが失われます。試す:

local.data.Item = 'Item One';
于 2012-05-06T00:39:52.197 に答える