通过按钮单击打开新窗口时会话值丢失

时间:2017-09-27 12:38:22

标签: javascript jquery ruby-on-rails ajax

我正在打开一个关于按钮点击的新窗口,从iframe和后台获取插件的ajax调用。但问题是我在新窗口中丢失了会话值。任何人都可以为我提供解决方案,即使在新窗口中我也可以保持会话的值。 这是应用程序中的javascript文件中的代码:

$(document).on('click', '#from_salesforce', function() {
    tabId=$("#tab_id").val();
    window.open("https://ap5.salesforce.com/home/home.jsp?amazon_tab_id="+tabId, "_blank");
});

这是来自插件的ajax调用:

if(isSalesforceHomeTab(tabUrl) && isFromAmazonToSalesforce(tabUrl)){
    $.ajax({
        type: "POST",
        url: "https://c09de501.ngrok.io/plugin/touches/salesforce_direct_from_amazon",
        data: {
            amazon_tab_id: amazon_tab_id,
            salesforce_tab_id: tabId
        },
        success:function(response){
        }
    });
}

Ajax调用点击此功能:

def salesforce_direct_from_amazon
    debugger
    session["is_direct_from_amazon_#{params['salesforce_tab_id']}"] = true
    session["amazon_tab_id_in_salesforce_tab_#{params['salesforce_tab_id']}"] = params[:amazon_tab_id]
    render json: {success: true} 
end

1 个答案:

答案 0 :(得分:0)

您最有可能想要使用Cookie。会话处理方式略有不同。

cookies[:your_hash]