超安定したマイクロチャネルの検出ドメイン・インタフェースのAPIを共有

マイクロ文字のドメイン名は、インタフェースを検出するために使用されるのはいつですか?私たちは私たちのドメインを知っておく必要があり、多くの時間が初めて手紙を傍受するマイクロシールドでブロックされていない、我々は、ドメイン名は、常に状況を理解していない、マイクロチャネル検出ドメインにインタフェースする必要があります。

誰もが共有するために多くの比較の後、我々は、マイクロ文字のドメインセキュリティのリアルタイム検出に、マイクロ文字のドメイン名傍受・インターフェースの非常に安定的かつ効率的な検出を発見しました。そして、別のユーザーのニーズに応じて異なる周波数パッケージを開発します。

マイクロ文字でURLを開くプロンプトがより安定的で実用的な、マイクロチャネル検出ドメイン傍受のAPIインタフェースをお勧めするためにここに、ソリューション「のページを訪問することを停止しました」。通常、それは外部リンクを引き起こし、外部リンク、上のより厳格な制限を微信ので簡単に、アクセスを制限することができる遮断するために、コンテンツの規範の違反として扱われます。

、ここではそれをすべての最初の詳細な下もちろん、外部リンクの多くは、そのような共有の誘導など、5または黒またはQP、頭痛など、違法なコンテンツを存在しない、それがマイクロチャンネル公式のインターフェイスを使用して、安全な使用を確保します安定した、効率的な、マイクロ文字のドメイン名のリアルタイム検出が傍受をシールドされているかどうか、通知が表示された非常に迅速に、正確率が非常に高いです。価格はかなり良い上にして、また、比較的控えめです。

APIのマイクロチャネル検出ドメインからhttp://www.monkeyapi.com/

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;

import net.sf.json.JSONObject;

public class Demo {
  public static final String DEF_CHATSET = "UTF-8";
  public static final int DEF_CONN_TIMEOUT = 30000;
  public static final int DEF_READ_TIMEOUT = 30000;
  public static String userAgent =  "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";

  public static void mobileQuery(){
      String result =null;
      String url ="http://api.monkeyapi.com";//请求接口地址
      Map params = new HashMap();//请求参数
        params.put("appkey" , "appkey");//您申请的APPKEY
        params.put("url" , "www.url.com");//需要查询的网站
      try {
          result = net(url, params, "GET");
          JSONObject object = JSONObject.fromObject(result);
          if(object.getInt("error_code")==0){
            System.out.println(object.get("result"));
          }else{
            System.out.println(object.get("error_code")+":"+object.get("reason"));
          }
      } catch (Exception e) {
        e.printStackTrace();
      }
  }

  public static void main(String[] args) {

  }

  /**
   *
   * @param  strUrl 请求地址
   * @param  params 请求参数
   * @param  method 请求方法
   * @return    网络请求字符串
   * @throws  Exception
   */
  public static String net(String strUrl, Map params,String method) throws Exception {
     HttpURLConnection conn = null;
     BufferedReader reader = null;
     String rs = null;
     try {
        StringBuffer sb = new StringBuffer();
        if(method==null || method.equals("GET")){
          strUrl = strUrl+"?"+urlencode(params);
        }
        URL url = new URL(strUrl);
        conn = (HttpURLConnection) url.openConnection();
        if(method==null || method.equals("GET")){
           conn.setRequestMethod("GET");
        }else{
           conn.setRequestMethod("POST");
           conn.setDoOutput(true);
        }
        conn.setRequestProperty("User-agent", userAgent);
        conn.setUseCaches(false);
        conn.setConnectTimeout(DEF_CONN_TIMEOUT);
        conn.setReadTimeout(DEF_READ_TIMEOUT);
        conn.setInstanceFollowRedirects(false);
        conn.connect();
        if (params!= null && method.equals("POST")) {
           try {
              DataOutputStream out = new DataOutputStream(conn.getOutputStream());
              out.writeBytes(urlencode(params));
           } catch (Exception e) {
              // TODO: handle exception
              e.printStackTrace();
           }
        }
       InputStream is = conn.getInputStream();
       reader = new BufferedReader(new InputStreamReader(is, DEF_CHATSET));
       String strRead = null;
       while ((strRead = reader.readLine()) != null) {
         sb.append(strRead);
       }
       rs = sb.toString();
     } catch (IOException e) {
       e.printStackTrace();
     } finally {
       if (reader != null) {
          reader.close();
       }
       if (conn != null) {
          conn.disconnect();
       }
     }
    return rs;
  }

  //将map型转为请求参数型
  public static String urlencode(Map<String,String> data) {
       StringBuilder sb = new StringBuilder();
       for (Map.Entry i : data.entrySet()) {
           try {
              sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");
           } catch (UnsupportedEncodingException e) {
              e.printStackTrace();
           }
       }
       return sb.toString();
  }

}

おすすめ

転載: blog.51cto.com/14332373/2404954