2017-01-18 2 views
0

My Grails 3.2.3アプリがポート9000で実行されていて、/api/mail/getUnreadCountGETリクエストを行っていますが、そのURLに404エラーが表示されます。

マイURLMapping.groovyた:

get "/api/$controller(.$format)?"(action: "index") 
get "/api/$controller/$id(.$format)?"(action: "show") 

"/api/$controller/$action?/$id?(.$format)?" { 
    constraints { 
     // apply constraints here 
    } 
} 

はまた、我々は、GrailsのURLマッピングのログを有効にする方法を、私を助けて?

アップデート1

class MailController { 

    static allowedMethods = [index: "GET", getUnreadCount: "GET"] 
    ..... 
    ....... 
    def getUnreadCount() { 
     User currentUserInstance = springSecurityService.getCurrentUser() 
     List counts = userService.getUnreadCounts(currentUserInstance) 
     respond(counts) 
    } 
} 
+0

'/ api/mail/getUnreadCount'に '/ api/mail/getUnreadCount /'のように '/'を追加しようとしましたか? – mic4ael

+0

はい、私は試しましたが、まだ問題はありますか? –

+0

grailsアプリケーションは9000ポートで正しく動作していません。http:// localhost:9000 **を押してgrailsホームページを開くことができるかどうか確認してください。それが動作している場合は、あなたの**メール**コントローラを表示していますか? –

答えて

1

あなたがrespond

からの出力を得るために、ビュー/ mailディレクトリにgetUnreadCount.gspを持っていることを期待...とあなたが持っていけない場合は、コードのためにあなたは、提供されどのビューでも、Error 500ではなく404を取得する必要があります。

形式:[ 'XML'、 'JSON']

または明示的に言及ビュー

ビュー: "showCount"

または

代わり render方法を試してみてください

更新

あなたは/ API /メール/ getUnreadCountを打つときにところで、

get "/api/$controller/$id(.$format)?"(action: "show") 

を削除してください、このマッピングは$id = getUnreadCountを引き起こし、あなたはエラーを生成し、あなたのコントローラに任意のアクションshowを持っていません。

関連する問題