คัดลอกรหัสรหัสดังต่อไปนี้:
นำเข้า java.io.IOException;
นำเข้า java.io.InputStream;
นำเข้า java.io.OutputStream;
นำเข้า java.net.HttpURLConnection;
นำเข้า java.net.MalformedURLException;
นำเข้า java.net.URL;
นำเข้า org.json.JSONObject;
MenuUtil ระดับสาธารณะ {
-
* รับ ACCESS_TOKEN
* @หัวข้อ: getAccess_token
* @Description: รับ ACCESS_TOKEN
* ไฟล์คอนฟิกูเรชัน @param @return
* @return ประเภทการคืนสตริง
* @พ่น
-
สตริงคงที่ส่วนตัว getAccess_token(){
สตริง APPID="";
สตริง APPSECRET="";
URL สตริง = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+ APPID + "&secret=" +APPSECRET;
สตริง accessToken = null;
พยายาม {
URL urlGet = URL ใหม่ (url);
HttpURLConnection http = (การเชื่อมต่อ HttpURL) urlGet.openConnection();
http.setRequestMethod("GET"); //ต้องเป็นคำขอรับ
http.setRequestProperty("ประเภทเนื้อหา", "แอปพลิเคชัน / x-www-form-urlencoded");
http.setDoOutput(จริง);
http.setDoInput(จริง);
System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//การหมดเวลาการเชื่อมต่อ 30 วินาที
System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // หมดเวลาอ่านคือ 30 วินาที
http.เชื่อมต่อ();
InputStream คือ =http.getInputStream();
ขนาด int =is.available();
ไบต์ [] jsonBytes = ไบต์ใหม่ [ขนาด];
is.read(jsonBytes);
ข้อความสตริง = สตริงใหม่ (jsonBytes, "UTF-8");
JSONObject demoJson = JSONObject ใหม่ (ข้อความ);
accessToken = demoJson.getString("access_token");
System.out.println (ข้อความ);
} จับ (ข้อยกเว้นจ) {
e.printStackTrace();
-
ส่งคืนโทเค็นการเข้าถึง;
-
-
*สร้างเมนู
* @หัวข้อ: createMenu
* @Description: สร้างเมนู
* @param @return
* @param @throws ไฟล์คอนฟิกูเรชัน IOException
* @return int ประเภทการส่งคืน
* @พ่น
-
สาธารณะสตริง createMenu () {
เมนูสตริง = "{/"ปุ่ม/":[{/"ประเภท/":/"คลิก/",/"ชื่อ/":/"MENU01/",/"คีย์/":/"1/"},{/" พิมพ์/":/"คลิก/",/"ชื่อ/":/"คำค้นหาสภาพอากาศ/",/"key/":/" ซีอาน/"},{/"name/":/"Daily work/",/"sub_button/":[{/"type/":/"click/",/"name/":/"ถึง -ทำงานเดี่ยว/",/"key/":/"01_WAITING/"},{/"type/":/"cl ick/",/"name/":/"ใบสั่งงานประมวลผลแล้ว/",/"key/":/"02_FINISH/"},{/"type/":/"click/",/"name/" : /"คำสั่งงานของฉัน/",/"key/":/"03_MYJOB/"},{/"type/": /"click/",/"name/":/"กล่องข้อความประกาศ/",/"key/":/"04_MESSAGEBOX/"},{/"type/":/"click/",/"name/ ":/"ลงชื่อเข้าใช้/",/"key/":/"05_SIGN/"}]}]}";
//เปลี่ยนที่นี่เป็นโครงสร้างที่คุณต้องการแล้วแทนที่
สตริง access_token= getAccess_token();
การกระทำของสตริง = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token="+access_token;
พยายาม {
URL url = URL ใหม่ (การกระทำ);
HttpURLConnection http = (การเชื่อมต่อ HttpURL) url.openConnection();
http.setRequestMethod("โพสต์");
http.setRequestProperty("ประเภทเนื้อหา", "แอปพลิเคชัน / x-www-form-urlencoded");
http.setDoOutput(จริง);
http.setDoInput(จริง);
System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//หมดเวลาการเชื่อมต่อ 30 วินาที
System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // หมดเวลาอ่านคือ 30 วินาที
http.เชื่อมต่อ();
OutputStream os= http.getOutputStream();
os.write(menu.getBytes("UTF-8"));//ส่งผ่านพารามิเตอร์
os.ฟลัช();
os.ปิด();
InputStream คือ =http.getInputStream();
ขนาด int =is.available();
ไบต์ [] jsonBytes = ไบต์ใหม่ [ขนาด];
is.read(jsonBytes);
ข้อความสตริง = สตริงใหม่ (jsonBytes, "UTF-8");
กลับ "ข้อมูลการส่งคืน" + ข้อความ;
} จับ (MalformedURLException e) {
e.printStackTrace();
} จับ (IOException จ) {
e.printStackTrace();
-
กลับ "createMenu ล้มเหลว";
-
-
* ลบเมนูปัจจุบัน
* @หัวข้อ: ลบเมนู
* @Description: ลบเมนูปัจจุบัน
* ไฟล์คอนฟิกูเรชัน @param @return
* @return ประเภทการคืนสตริง
* @พ่น
-
สาธารณะสตริงลบเมนู()
-
สตริง access_token= getAccess_token();
การกระทำของสตริง = "https://api.weixin.qq.com/cgi-bin/menu/delete? access_token="+access_token;
พยายาม {
URL url = URL ใหม่ (การกระทำ);
HttpURLConnection http = (การเชื่อมต่อ HttpURL) url.openConnection();
http.setRequestMethod("GET");
http.setRequestProperty("ประเภทเนื้อหา", "แอปพลิเคชัน / x-www-form-urlencoded");
http.setDoOutput(จริง);
http.setDoInput(จริง);
System.setProperty("sun.net.client.defaultConnectTimeout", "30000");//หมดเวลาการเชื่อมต่อ 30 วินาที
System.setProperty("sun.net.client.defaultReadTimeout", "30000"); // หมดเวลาอ่านคือ 30 วินาที
http.เชื่อมต่อ();
OutputStream os= http.getOutputStream();
os.ฟลัช();
os.ปิด();
InputStream คือ =http.getInputStream();
ขนาด int =is.available();
ไบต์ [] jsonBytes = ไบต์ใหม่ [ขนาด];
is.read(jsonBytes);
ข้อความสตริง = สตริงใหม่ (jsonBytes, "UTF-8");
กลับ "deleteMenu ส่งคืนข้อความ:"+ข้อความ;
} จับ (MalformedURLException e) {
e.printStackTrace();
} จับ (IOException จ) {
e.printStackTrace();
-
กลับ "ลบเมนูล้มเหลว";
-
โมฆะคงที่สาธารณะ main (String [] args) {
System.out.println(createMenu());
-
-