java URL 获取PHP JSON 数据

1:php地址  http://127.0.0.6/?c=json
2:java 输出的结果是

[{"id":1,"name":"zhdc"},{"id":2,"name":"\u5c0f\u6731"}]

index.php

<?php
if(isset($_REQUEST['c'])){
  $c = $_REQUEST['c'];
  if($c == "json"){
    $arr = array(
        array("id"=>1,"name"=>"zhdc"),
        array("id"=>2,"name"=>"小朱")
    );
    die(json_encode($arr));
  }
}
Main.class

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

public class Main {
  public static void main(String[] args){
    try {
      URL url = new URL("http://127.0.0.6/?c=json");
      HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
      httpURLConnection.setDoInput(true);
      httpURLConnection.connect();
      InputStream inputStream = httpURLConnection.getInputStream();
      BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream);
      Reader reader = new InputStreamReader(bufferedInputStream);
      String json = "";
      int c;
      while((c = reader.read()) != -1){
        json += (char)c;
      }
      System.out.println(json);
    } catch (MalformedURLException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}
(0)

相关推荐

  • java后台调用HttpURLConnection类模拟浏览器请求实例(可用于接口调用)

    一般在项目开发中难免遇到外部接口的调用,本文实例讲述了java后台调用HttpURLConnection类模拟浏览器请求的方法.可用于接口调用.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package com.cplatform.movie.back.test; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.InputStreamReader; import ja

  • Java HttpURLConnection超时和IO异常处理

    最近同步数据的时候发现了一个问题,我本身后台插入数据后给其他部门后台做同步.说简单一点其实就是调用对方提供的接口,进行HTTP请求调用.然后后面发现问题了.HTTP请求的话,有可能请求超时,中断失败,IO异常其实都有可能,如果是平时打开一个网页还好,打不开的时候,你会关掉,或者他页面给你显示信息.但是同步,不可以这样做,一旦请求失败,必须让数据正确的同步,今天才意识到这个问题的重要性. String httpUrl = "https://www.baidu.com/s?ie=UTF-8&

  • Java 测试URL地址是否能正常连接的代码

    Java 测试URL地址是否能正常连接 public static int testWsdlConnection(String address) throws Exception { int status = 404; try { URL urlObj = new URL(address); HttpURLConnection oc = (HttpURLConnection) urlObj.openConnection(); oc.setUseCaches(false); oc.setConne

  • Java在web页面上的编码解码处理及中文URL乱码解决

    编码&解码  通过下图我们可以了解在javaWeb中有哪些地方有转码: 用户想服务器发送一个HTTP请求,需要编码的地方有url.cookie.parameter,经过编码后服务器接受HTTP请求,解析HTTP请求,然后对url.cookie.parameter进行解码.在服务器进行业务逻辑处理过程中可能需要读取数据库.本地文件或者网络中的其他文件等等,这些过程都需要进行编码解码.当处理完成后,服务器将数据进行编码后发送给客户端,浏览器经过解码后显示给用户.在这个整个过程中涉及的编码解码的地方较

  • Java截取url参数的方法

    废话少说,直奔关键代码. 具体代码如下所示: /** * 去掉url中的路径,留下请求参数部分 * @param strURL url地址 * @return url请求参数部分 * @author lzf */ private static String TruncateUrlPage(String strURL){ String strAllParam=null; String[] arrSplit=null; strURL=strURL.trim().toLowerCase(); arrS

  • java根据url抓取并生成缩略图的示例

    java根据url抓取并生成缩略图 复制代码 代码如下: public static Bitmap loadImageFromUrl(String url, int sc) {        URL m;        InputStream i = null;        BufferedInputStream bis = null;        ByteArrayOutputStream out = null;        byte isBuffer[] = new byte[1024

  • Java中URL传中文时乱码的解决方法

    前言 Java中URL传中文时乱码的问题相信不少朋友都遇到过,最近就遇到一个问题,就是在Action当中把一条中文信息绑定在URL的后面,ActionForward到别一个页面时,用reqeust.getParameter取出是出现乱码的问题. 解决办法 1.对要进行URL传递的中文字符进行编码: String message = java.net.URLEncoder.encode("中文字符","utf-8"); 2.在取URL传递中文的页面对字符进行解码: S

  • Java 创建URL的常见问题及解决方案

    URL无处不在,不过似乎开发人员并没有真正地理解它们,因为我在Stack Overflow上经常看到有人在问如何正确的创建一个URL.想知道URL语法是如何工作的,可以看下Lunatech的 这篇文章 ,非常不错 . 本文不会深入介绍URL的全部语法(如果你想全面了解URL的话,可以读下 RFC 3986 , RFC 1738 , 以及上面提到的那篇文章,还有 W3上面的文档 ), 这里我想讲的是常见的一些库在操作URL方面存在的错误,以及如何通过 URL-builder 来正确的使用它,这是我

  • 谈谈Java利用原始HttpURLConnection发送POST数据

    URLConnection是个抽象类,它有两个直接子类分别是HttpURLConnection和JarURLConnection.另外一个重要的类是URL,通常URL可以通过传给构造器一个String类型的参数来生成一个指向特定地址的URL实例. 每个 HttpURLConnection 实例都可用于生成单个请求,但是其他实例可以透明地共享连接到 HTTP 服务器的基础网络.请求后在 HttpURLConnection 的 InputStream 或 OutputStream 上调用 close

  • JS的encodeURI和java的URLDecoder.decode使用介绍

    如果不想在url中看到有明文,比如http://localhost:8080/template_1/login.action?user=张三 可以使用js的encodeURI的URLDecoder.decode一起使用一起来把url加密下 (1)JS在页面上把数据var val = encodeURI(encodeURI("要传到服务器端的是值")); //调用2次encodeURI href="<%=basePath%>recordManager/test_js

  • Java如何实现URL带请求参数(get/post)及得到get和post请求url和参数列表的方法

    具体代码如下所示: public static String sendGet(String url,String param) { String result = ""; try{ String urlName = url + "?"+param;// URL U = new URL(urlName); URLConnection connection = U.openConnection(); connection.connect(); BufferedReade

随机推荐