php代码转为java代码

小帅帅丶 发布于 2014/08/28 11:45
阅读 8K+
收藏 0

【深度】AI、5G时代下,算力网络与内生安全最全解析!>>>

<?php

/*
     
 
 */
 
 class class_weixin {
     var $appid = APPID;                            //定义一个appid变量
     var $appsecret = APPSECRET;                    //定义一个appsecret变量
     
     
     //构造函数,获取Access Token
     public function _construct($appid = NULL,$appsecret = NULL)
     {
         if($appid && $appsecret){
             $this->appid = $appid;                //appid=传过来的appid
             $this->appsecret = $appsecret;        //appsecret=传过来的secret
         }    
         
         //HARDCODE
         $this->lasttime = 1406469747;            //起始时间为。。。
         $this->access_token = '';//code
         if(time() > ($this->lasttime + 7200)){    //如果当前时间大于起始时间加两小时,url等于。。。。。
             $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->appsecret;
             
             $res = $this->http_request($url);                    //res=那个URL得到的路径
             $result = json_decode($res,true);
             //save to Database or Memache
             $this->access_token = $result["access_token"];
             $this->lasttime = time();                            //起始时间等于当前时间。
             var_dump($this->lasttime);
             var_dump($this->access_token);
         }
     }
     
     
     //发送模板消息
     public function send_template_message($data)
     {
         $url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=".$this->access_token;
         $res = $this->http_request($url,$data);
         return json_decode($res,true);
     }
     
     
     //https请求(支持GET和SET)
     protected function http_request($url,$data = NULL)
     {
         $curl = curl_init();
         curl_setopt($curl,CURLOPT_URL,$url);
         curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE);
         curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,FALSE);
         if(!empty($data)){
             curl_setopt($curl,CURLOPT_POST,1);
             curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
         }
         curl_setopt($url,CURLOPT_RETURNTRANSFER,1);
         $output = curl_exec($curl);
         curl_close($curl);
         return $output;
     }
 }
?>

希望懂PHP与JAVA的大神帮忙转换下。

本来不才。只会java。

加载中
0
l
lanybass

我来一句一句给你解析吧,如果你还是不会,那只能说,你连JAVA也不会

1.定义一个名为class_weixin的类你会吧?
2.定义两个名为 appid 、 appsecret 的类变量你会吧?
3.定义一个有两个string参数的构造函数你会吧?
4.构造函数里面传入的参数赋值给类变量你会吧?
5.后面是两小时过期后重新请求一次token,不用按他的来,他这样写不科学。你可以每次都请求token,或者请求到之后存入缓存(2小时失效,如果缓存里没了,再去请求,不用设神马起始时间)
6.定义一个名为send_template_message(string data)的函数会吧?
7.函数里面发一个到url的POST请求并将请求结果从json变为hashmap会吧?
8.定义一个名为http_request(string url, string data)的函数来实现java模拟POST会吧?



其他地方new这个类,传入参数,调用send_template_message来请求接口会吧?

小帅帅丶
小帅帅丶
我java代码已经写了。卡在了请求那了。
南湖船老大
南湖船老大
其实就是懒
0
justintung
justintung
你java也是刚学的吗?
leo108
leo108
回复 @小帅帅丶 : 自己都懒,别人就更没义务帮你搞了
小帅帅丶
小帅帅丶
不是。我是不会php。不懂那些函数。懒得不想看API、 就想让大神给整整
0
老陌
老陌
不会java, 这个php代码挺简单,就是发送http请求数据而已,  http_request 这个方法就是 curl 的封装,你自己用java实现 post和get方式的http请求。其他两个方法都是些 参数构造, 应该能看懂吧。
小帅帅丶
小帅帅丶
那java就是一个Servlet了?大神帮帮 我
0
吃的是草
网上有java的API。下个就好了。这怎么转啊。
小帅帅丶
小帅帅丶
这个是PHP代码。我不懂PHP.我只会java。
0
南湖船老大
南湖船老大

啥都不说了,4L已经把能说的该说的都说了。

楼主既然这么懒,那就500块吧

小帅帅丶
小帅帅丶
好吧。今天才来看评论。
0
帖子列表
帖子列表
lz会java还这么懒
小帅帅丶
小帅帅丶
别人告诉我了。我知道我卡在哪了。
返回顶部
顶部