想要为grails应用程序添加自定义标头

时间:2015-06-24 10:13:52

标签: grails http-headers

我有Grails应用程序,有按钮点击,它被转发到一个由spring security进行身份验证的操作,如果用户没有登录,则首先进入登录页面,然后进入预期的页面。

我希望在单击按钮后设置标题,并且只有在点击按钮后才能在登录页面中重新定位标题,通常它不应该在登录页面上。

我已经从GSP重定向到另一个函数,我在那里设置标题,然后从那里重定向到actuall函数。

第一次当服务器运行时,值会出现,但之后会消失。

请指导我。

我的代码: -

gsp code :

<g:form controller="project" action="addFundraiserUrl" id="${project.id}"  params="['fr':currentFundraiser.username]">
                    <input type="submit" value="Join Us" class="col-md-12 col-sm-12 col-xs-12 inviteteammember text-center btn btn-default btn-md manage-team"/>
                </g:form>

controller code :- 

def addFundraiserUrl () {
    response.setHeader 'X-JoinUs', 'true'
    redirect (action:'addFundRaiser', params:params)
}

@Secured(['IS_AUTHENTICATED_FULLY'])
def addFundRaiser(){
    def project = projectService.getProjectById(params.id)
    User user = userService.getCurrentUser()
    def fundraiser = project.user.username
    def iscampaignAdmin = userService.isCampaignBeneficiaryOrAdmin(project, user)
    def message = projectService.getFundRaisersForTeam(project, user)
    def title = projectService.getVanityTitleFromId(params.id)
    def name = userService.getVanityNameFromUsername(fundraiser, params.id)

    if (iscampaignAdmin) {
        flash.prj_mngprj_message = message
        redirect (action: 'manageproject', params:['projectTitle':title])
    } else {
        flash.prj_mngprj_message = message
        redirect (action: 'show', params:['projectTitle':title,'fr':name])
    }
}

0 个答案:

没有答案