首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java Networking Post Resquest

Java Networking Post Resquest
EN

Stack Overflow用户
提问于 2018-03-19 23:56:27
回答 1查看 28关注 0票数 0
代码语言:javascript
运行
复制
package loginphp;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

public class Loginphp {

    public static void main(String[] args) throws MalformedURLException, IOException {
        String url = "http://localhost/login/login.php";
        String Parameters = "username=admin&password=admin";
        byte[] postdata = Parameters.getBytes("UTF-8");
        String useragent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0";
        URL urlLink = new URL(url);

        HttpURLConnection urlConn = (HttpURLConnection) urlLink.openConnection();
        urlConn.setRequestMethod("POST");
        urlConn.setRequestProperty("User-Agent", useragent);
       urlConn.setRequestProperty("Content-Length", String.valueOf(postdata.length));
        urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
        urlConn.setInstanceFollowRedirects(true);
        urlConn.setDoOutput(true);
        urlConn.getOutputStream().write(postdata);

        System.out.println("Connecting to " + url);
        System.out.println("Response " + urlConn.getResponseMessage());
        System.out.println("Code " + urlConn.getResponseCode());

        InputStream is = urlConn.getInputStream();
        InputStreamReader isr = new InputStreamReader(is);
        BufferedReader bis = new BufferedReader(isr);

        String output;

        while ((output = bis.readLine()) != null) {

            System.out.println(" " + output);
        }

    }

}

我发送了一个post请求到以下代码,但它没有重定向到欢迎页面登录后,不确定它甚至登录。我得到的结果是与日志页面相同的代码。可能的问题是什么?我的主要目标是登录并重定向到welcome.php。该脚本在使用浏览器时运行得很好。我能够登录,重定向到欢迎页面和注销。

代码语言:javascript
运行
复制
<?php
   include("config.php");
   session_start();
   $error = "";
   if($_SERVER["REQUEST_METHOD"] == "POST") {
      // username and password sent from form 

      $myusername = mysqli_real_escape_string($db,$_POST['username']);
      $mypassword = mysqli_real_escape_string($db,$_POST['password']); 

      $sql = "SELECT id FROM admin WHERE username = '$myusername' and passcode = '$mypassword'";
      $result = mysqli_query($db,$sql);
      $row = mysqli_fetch_array($result,MYSQLI_ASSOC);
      $active = $row['active'];

      $count = mysqli_num_rows($result);

      // If result matched $myusername and $mypassword, table row must be 1 row

      if($count == 1) {
        // session_register("myusername");
         $_SESSION['login_user'] = $myusername;

         header("location: welcome.php");
      }else {
         $error = "Your Login Name or Password is invalid";
      }
   }
?>
<html>

   <head>
      <title>Login Page</title>

      <style type = "text/css">
         body {
            font-family:Arial, Helvetica, sans-serif;
            font-size:14px;
         }

         label {
            font-weight:bold;
            width:100px;
            font-size:14px;
         }

         .box {
            border:#666666 solid 1px;
         }
      </style>

   </head>

   <body bgcolor = "#FFFFFF">

      <div align = "center">
         <div style = "width:300px; border: solid 1px #333333; " align = "left">
            <div style = "background-color:#333333; color:#FFFFFF; padding:3px;"><b>Login</b></div>

            <div style = "margin:30px">

               <form action = "" method = "post">
                  <label>UserName  :</label><input type = "text" name = "username" class = "box"/><br /><br />
                  <label>Password  :</label><input type = "password" name = "password" class = "box" /><br/><br />
                  <input type = "submit" value = " Submit "/><br />
               </form>

               <div style = "font-size:11px; color:#cc0000; margin-top:10px"><?php echo $error; ?></div>

            </div>

         </div>

      </div>

   </body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2018-03-20 01:18:23

简短的答案是您应该使用303 redirect

代码语言:javascript
运行
复制
header("HTTP/1.1 303 See Other");
header("location: welcome.php");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49367245

复制
相关文章

相似问题

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