首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为菱形/rhodes webview设置cookie

如何为菱形/rhodes webview设置cookie
EN

Stack Overflow用户
提问于 2011-06-03 05:45:11
回答 2查看 817关注 0票数 1

我正在使用rhomobile/rhodes应用程序与web服务对话并在WebView中显示内容,当我在Rho::AsyncHttp.post中发送带有登录详细信息和回调的登录信息时,我可以看到在web服务上成功登录,应用程序会获得一个我可以放入和查看的cookie。到目前一切尚好。

但是,我尝试的下一步是使用该cookie对WebView进行身份验证,因此在回调中:

代码语言:javascript
复制
WebView.set_cookie("10.0.1.190", @params['cookies'])
WebView.navigate("10.0.1.190")

但这会将我重定向到登录页面。发送的cookie与@params['cookies']中的cookie不匹配,是否有其他方法为ip地址设置cookie?或者是我做错了什么,或者这在rhodes中是不是坏了?我在android和iphone上都尝试了3.0.0和3.0.1,它们的行为是一样的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-08 00:13:58

原来WebView.set_cookie目前不适用于3.0.1,但是你可以在javascript中设置cookie ...这就是我最终得到的一个似乎有效的方法:

代码语言:javascript
复制
def login
  WebView.navigate("http://www.mysite.com/blank.html")
  Rho::AsyncHttp.post(
    :url => "http://www.mysite.com/login?user[username]=joeblow&user[password]=supersecret",
    :callback => url_for(:action => :login_callback)
  )
  render :action => :wait
end

def login_callback
  WebView.execute_js("document.cookie='#{@params["cookies"]};expires=Fri, June 10 12:00:00 UTC;path=/;domain=.mysite.com'")
  WebView.navigate("http://www.mysite.com")
end

blank.html只是一个空文件,用于加载WebView而不设置任何cookie。

票数 2
EN

Stack Overflow用户

发布于 2012-10-09 23:09:53

这就是在不使用js的情况下对我有效的方法。我想这可能是因为我添加了多个cookie,所以我最终在回调中逐个添加了它们,而不是一次性添加所有它们。

代码语言:javascript
复制
  def login
      WebView.navigate("http://www.mysite.com/blank.html")
      Rho::AsyncHttp.post(
        :url => "http://www.mysite.com/login?user[username]=joeblow&user[password]=supersecret",
        :callback => url_for(:action => :login_callback)
      )
      render :action => :wait
    end



    def login_callback

        cookies = @params["cookies"].split(';');

            cookie_str = ""
                cookies.each do |c|
                    c = c + ';'
                    WebView.set_cookie("10.0.1.190", c)
                end
         WebView.navigate("http://www.mysite.com")

    end
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6220754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档