登录后无法重定向到index.html页面

时间:2016-03-17 15:31:20

标签: javascript python html python-2.7 basehttpserver

我的客户端应用首先从login.html页面获取user_ID和密码,然后选择"登录"按下按钮,功能"显示()"运行从输入字段中存储ID和密码并将其发送到服务器。服务器批准登录ID和密码,并尝试发送index.html页面。但是我无法发送index.html页面。可能是我在HTML代码或服务器端遗漏了一些内容。

我的HTML(引导程序)代码是;

          <input type="text" id="user_id" class="form-control input-lg" placeholder="User ID" >

          <input type="password" id="password_id" class="form-control input-lg" placeholder="Password" >

          <button class="btn btn-primary btn-lg btn-block" onclick="Display()" > Sign In link</button>

JavaScript&#34;显示()&#34;功能:

        <script>

    function Display(){
                var ID = document.getElementById("user_id").value;
                var passwrd = document.getElementById("password_id").value;
                var login = "/login:" + ID + "-" + passwrd + "--" ;

                var http = new XMLHttpRequest();
        http.open("GET", login, true); 
        http.onreadystatechange = function() {          if(http.readyState == 4 && http.status == 200) {
               var data = http.responseText;
                        if (data=="0"){
            document.getElementById("info_id").innerHTML =  "wrong password";
            } 
                        else if (data=="1"){
            document.getElementById("info_id").innerHTML =  "logging in as Admin";
            page();
            }           

        }
        }
        http.send(null); 
             }
    function page(){
        var request = new XMLHttpRequest();
        request.onreadystatechange = function() {
            if (request.readyState === 4) {
            if (request.status === 200) {
                //document.body.className = 'ok';
                //console.log(request.responseText);
            } else {
                //document.body.className = 'error';
            }
            }
        };
        request.open("GET", "index.html" , true);
        request.send(null);

      }
    </script>

Python baseHTTPServer代码是:

class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_HEAD(s):
    s.send_response(200)
    s.send_header("Content-type", "text/html")
    s.end_headers()


def do_GET(s):
    HTTP_request=s.requestline
    index_1=HTTP_request.index("GET /")
    index_2=HTTP_request.index(" HTTP/1.1")
    file_name=HTTP_request[index_1+5:index_2]
    print 'HTTP_request:',HTTP_request 
    if HTTP_request.find('login')>-1:
        print 'got', file_name  # file name is formatted as "login:anum-1234--"
        ID = file_name[6:file_name.find('-')]
        password = file_name[file_name.find('-')+1:file_name.find('--')]
        if ID == "anum" and password == "1234":
            admin = 1
            print 'admin ENTERED'  # <--working till here
            file1=open('index.html','r')
            file_read=file1.read()
            s.send_response(301)
            s.send_header('Location','http://index.html') # <- is it correct this way ?
            #s.send_header('Location',file_read)  ## <- or this way
            s.end_headers() 
        else:
            admin = 0  
            s.wfile.write("0")

任何形式的帮助都将受到高度赞赏,在此先感谢:)

0 个答案:

没有答案