2

URLMappings に次のマッピングがあります

addPurchase:"/addPurchase" {
            controller = "cart"
            action = "addPurchase"
        }

GSP から AJAX 呼び出しを行います

function addPurchase(purchaseJSON, amount) {
            $.ajax({
                url: 'addPurchase',
                data: {
                    purchase: purchaseJSON
//                    quantity: amount
                },
                type : "POST",
                complete:function(data) {
                    updateCart();
                    updateOrderSummary(data);
                }
            });
        }

私のコントローラーコードは

def addPurchase = {

      def result = cartService.addPurchase(session,params)

      log.debug"Results from addPurchase" + result
      response.status = 200
      return result as JSON

    }

コンソールに出力が表示されますが、ブラウザにエラー 404 が表示されます。なぜそれが起こっているのですか?私のgrailsのバージョンは@ 1.3.7です

4

1 に答える 1

12

必要な応答は「text/html」または「text/json」ですが、実際には結果を返しています

したがって、コントローラーでは、結果をingするrender代わりに結果を取得する必要があります。returnお気に入り :

def addPurchase = {
    def result = cartService.addPurchase(session,params)
    log.debug"Results from addPurchase" + result
    response.status = 200
    render result as JSON
}
于 2012-09-05T06:46:32.000 に答える