首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Mochiweb处理用户会话

使用Mochiweb处理用户会话
EN

Stack Overflow用户
提问于 2009-06-16 16:05:14
回答 1查看 1.3K关注 0票数 2

我有一个基于PHP的应用程序运行。用户登录,并执行一些操作。我设置了一个反向代理来转发某些单独由mochiweb服务器处理的请求-例如,任何带有mysite.com/mochiweb的请求URL都会被路由到mochiweb服务器。

现在,我的问题是如何使用PHP提供的会话信息来验证这个请求?我只希望通过PHP前端登录的用户能够访问mochiweb who服务器的服务。不应直接处理任何流浪请求。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-06-18 20:48:44

您可以让erlang服务器向php服务器发送带有所述会话cookie的http请求,并让php服务器返回会话是否有效。例如,下面是我如何通过recaptcha验证站点

代码语言:javascript
复制
-module(ed_recaptcha).

-license("GPL3").

-export([verify/4]).

-define(RECAPTCHA_URL, "http://api-verify.recaptcha.net/verify").

verify(Private_Key, Remote_Ip, Challenge, Response) ->
    Body = list_to_binary(
             io_lib:format(
               "privatekey=~s&challenge=~s&response=~s&remoteip=~s",
               [Private_Key, Challenge, Response, Remote_Ip])),
    case http:request(post, {?RECAPTCHA_URL,
                             [], "application/x-www-form-urlencoded",
                             Body},
                      [{timeout, 30000}, {sync, false}],
                      []) of
        {ok, {_Status_line, _Headers, Response_Body}} ->
            verify_response(Response_Body)
    end.

verify_response("false\nincorrect-captcha-sol") ->
    {error, robot};
verify_response("false\ninvalid-request-cookie") ->
    {error, robot};
verify_response("true\nsuccess") ->
    {ok, not_robot}. 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1002479

复制
相关文章

相似问题

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