即将(正在)热映电影

输出即将或者正在上映的电影


请求地址:http://api.xiaocongjisuan.com/data/latestfilm/get
返回格式:json/xml
请求方式:http/https;get/post
参数示例:appKey=yours&openId=yours&limit=20
请求参数说明:
名称类型必填说明
appKeyString接口唯一标识,在用户后台->应用中心->我的接口查看
openIdString平台id,注册后系统自动生成,在用户后台->用户中心->账户信息查看
dTypeString接口数据返回类型,可选值:json、xml,默认值:json
limitInteger多少条最新电影,默认为50,最大为100
返回结果说明:
名称类型说明
errorCodeInteger错误码,请参看错误码解释
errorString错误标识
errorMessageString错误提示
nameString电影名称
genresString剧情分类
showTimeString上映时间
directorsString导演
scoreString评分,有可能为空
languageString语言
herosString主演
storylineString故事情节
json返回示例:
{
	"data": {
		"amount": 5,
		"list": [{
			"name": "红色之子·单刀赴会",
			"genres": "中国大陆  剧情  历史  战争",
			"showTime": "2019-10-04(中国大陆电视)/2019-10-23(中国大陆)",
			"directors": "王路沙    ",
			"score": null,
			"language": null,
			"heros": "李肖宁  其那日图  李春明  塔娜花日",
			"storyline": "影片选取1945年10月乌兰夫“单刀赴会”解散伪内蒙政府维护祖国统一真实历史事件,讲述老一辈无产阶级革命家乌兰夫同志,临危受命,运用智慧解决所谓的“内蒙古人民共和国”临时政府,最终带领内蒙古走上了民族区域自…"
		}, {
			"name": "丑娃娃 UglyDolls",
			"genres": "中国大陆  加拿大  美国  喜剧  动画  奇幻  冒险",
			"showTime": "2019-10-13(中国大陆)/2019-05-03(美国)",
			"directors": "凯利·阿斯博瑞    ",
			"score": null,
			"language": null,
			"heros": "艾玛·罗伯茨  加奈儿·梦奈  尼克·乔纳斯  碧碧·雷克萨",
			"storyline": "该片讲述了丑娃娃们探索未知世界寻找真正自我的冒险之旅的故事。生活在丑娃镇上的丑娃娃们前往一个叫完美学院的地方探险,那里的娃娃们都精致漂亮,会在毕业前接受训练,然后被送到真实世界里成为孩子们心爱的玩具。…"
		}, {
			"name": "航海王:狂热行动(2019) One Piece: Stampede",
			"genres": "动画/冒险",
			"showTime": "2019-10-18(中国)",
			"directors": "大塚隆史 Takashi Ôtsuka",
			"score": null,
			"language": null,
			"heros": "田中真弓 Mayumi Tanaka (voice) 冈村明美 Akemi Okamura (voice) 中井和哉 Kazuya Nakai (voice) 山口胜平 Kappei Yamaguchi (voice) 平田广明 Hiroaki Hirata (voice) 大谷育江 Ikue Ootani (voice) 矢尾一树 Kazuki Yao (voice) 长岛雄一 Yûichi Nagashima (voice) 山口由里子 Yukiko Yamaguchi (voice) 伊藤加奈惠 Itô Kanae (voice) 宝龟克寿 Katsuhisa Hôki (voice)",
			"storyline": null
		}, {
			"name": "萤火奇兵2:小虫不好惹(2019) You Don’t Mess with Little Bugs",
			"genres": "动画/奇幻/喜剧/冒险",
			"showTime": "2019-11-2(中国)",
			"directors": "邓伟锋 Weifeng Deng",
			"score": null,
			"language": null,
			"heros": "郭盛 Sheng Guo (voice) 图特哈蒙 Tu Te Ha Meng (voice) 杨凝 Ning Yang (voice) 姚雷 Lei Yao (voice) 王琳熙 Lin-xi Wang (voice) 李兰陵 Lanling Li (voice)",
			"storyline": null
		}, {
			"name": "六欲天(2019) Summer of Changsha",
			"genres": "/犯罪",
			"showTime": "2019-11-1(中国)",
			"directors": "祖峰 Feng Zu",
			"score": null,
			"language": null,
			"heros": "黄璐 Lu Huang 陈明昊 Minghao Chen 田雨 Yu Tian 刘天池 Liu Tianchi 张倩如 QianRu Zhang 祖峰 Feng Zu",
			"storyline": null
		}]
	},
	"errorMessage": "成功",
	"errorCode": 0,
	"error": "success"
}
xml返回示例:
<Map> 
  <data> 
    <amount>5</amount>  
    <list> 
      <name>红色之子·单刀赴会</name>  
      <genres>中国大陆 剧情 历史 战争</genres>  
      <showTime>2019-10-04(中国大陆电视)/2019-10-23(中国大陆)</showTime>  
      <directors>王路沙</directors>  
      <score/>  
      <language/>  
      <heros>李肖宁 其那日图 李春明 塔娜花日</heros>  
      <storyline>影片选取1945年10月乌兰夫“单刀赴会”解散伪内蒙政府维护祖国统一真实历史事件,讲述老一辈无产阶级革命家乌兰夫同志,临危受命,运用智慧解决所谓的“内蒙古人民共和国”临时政府,最终带领内蒙古走上了民族区域自…</storyline> 
    </list>  
    <list> 
      <name>丑娃娃 UglyDolls</name>  
      <genres>中国大陆 加拿大 美国 喜剧 动画 奇幻 冒险</genres>  
      <showTime>2019-10-13(中国大陆)/2019-05-03(美国)</showTime>  
      <directors>凯利·阿斯博瑞</directors>  
      <score/>  
      <language/>  
      <heros>艾玛·罗伯茨 加奈儿·梦奈 尼克·乔纳斯 碧碧·雷克萨</heros>  
      <storyline>该片讲述了丑娃娃们探索未知世界寻找真正自我的冒险之旅的故事。生活在丑娃镇上的丑娃娃们前往一个叫完美学院的地方探险,那里的娃娃们都精致漂亮,会在毕业前接受训练,然后被送到真实世界里成为孩子们心爱的玩具。…</storyline> 
    </list>  
    <list> 
      <name>航海王:狂热行动(2019) One Piece: Stampede</name>  
      <genres>动画/冒险</genres>  
      <showTime>2019-10-18(中国)</showTime>  
      <directors>大塚隆史 Takashi &amp;#212;tsuka</directors>  
      <score/>  
      <language/>  
      <heros>田中真弓 Mayumi Tanaka (voice) 冈村明美 Akemi Okamura (voice) 中井和哉 Kazuya Nakai (voice) 山口胜平 Kappei Yamaguchi (voice) 平田广明 Hiroaki Hirata (voice) 大谷育江 Ikue Ootani (voice) 矢尾一树 Kazuki Yao (voice) 长岛雄一 Yûichi Nagashima (voice) 山口由里子 Yukiko Yamaguchi (voice) 伊藤加奈惠 Itô Kanae (voice) 宝龟克寿 Katsuhisa Hôki (voice)</heros>  
      <storyline/> 
    </list>  
    <list> 
      <name>萤火奇兵2:小虫不好惹(2019) You Don’t Mess with Little Bugs</name>  
      <genres>动画/奇幻/喜剧/冒险</genres>  
      <showTime>2019-11-2(中国)</showTime>  
      <directors>邓伟锋 Weifeng Deng</directors>  
      <score/>  
      <language/>  
      <heros>郭盛 Sheng Guo (voice) 图特哈蒙 Tu Te Ha Meng (voice) 杨凝 Ning Yang (voice) 姚雷 Lei Yao (voice) 王琳熙 Lin-xi Wang (voice) 李兰陵 Lanling Li (voice)</heros>  
      <storyline/> 
    </list>  
    <list> 
      <name>六欲天(2019) Summer of Changsha</name>  
      <genres>/犯罪</genres>  
      <showTime>2019-11-1(中国)</showTime>  
      <directors>祖峰 Feng Zu</directors>  
      <score/>  
      <language/>  
      <heros>黄璐 Lu Huang 陈明昊 Minghao Chen 田雨 Yu Tian 刘天池 Liu Tianchi 张倩如 QianRu Zhang 祖峰 Feng Zu</heros>  
      <storyline/> 
    </list> 
  </data>  
  <errorMessage>成功</errorMessage>  
  <errorCode>0</errorCode>  
  <error>success</error> 
</Map>
全部评论
系统级错误码列表:
错误码 错误标识 错误提示
0 success 成功
1 fail 失败
2 pass 通过
3 data_allow 允许返回数据
10001 error_appkey 错误的appkey
10002 appkey_killed appkey被封杀
10003 api_exceed_max_limit 接口使用超过日最大限额,有可能威胁服务器安全
10004 api_exceed_limit 接口访问次数耗尽,请及时续费
10005 ip_illegal 该ip没有请求权限,请检查白名单设置
10006 ip_exceed_max_limit 当前ip请求超过限制
10007 ip_killed 当前ip被封杀
10008 error_openid 错误的openid
10009 openid_killed 该openid没有请求权限
10010 api_maintenance 接口维护
10011 api_closed 接口停用
10012 server_inner_error 服务器内部错误
10013 your_api_closed 该接口设置了关闭,请到用户后台查看
10014 your_api_not_bind_app 系统要求接口至少绑定一个应用,请到用户后台绑定
10015 do_not_authenticate 您的账户没有认证
接口具体错误返回码列表:
错误码 错误标识 错误提示
JAVA
package com.xiaocongjisuan.module.example;

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;

public class Application {
	
	 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";
	 
	 //配置您申请的appKey和openId
	 public static final String APP_KEY ="yours";
	 public static final String OPEN_ID ="yours";
	 
	 //将map型转为请求参数型
     public static String urlEncode(Map<String,Object> params) {
        
    	if(params==null){return "";};
    	 
    	StringBuilder sb = new StringBuilder();
        for (Map.Entry<String,Object> i : params.entrySet()) {
            try {
                sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
            }
        }
        String r=sb.toString();
        if(r.endsWith("&")){
        	r = r.substring(0,r.length()-1);
        }
        return r;
     }
     
     /**
     *
     * @param requestUrl 请求地址
     * @param params 请求参数
     * @param method 请求方法
     * @return 请求结果
     * @throws Exception
     */
     public static String requestContent(String requestUrl, Map<String,Object> params,String method) throws Exception {
        
    	HttpURLConnection conn = null;
        BufferedReader reader = null;
        String rs = null;
        try {

        	//组装请求链接
            StringBuffer sb = new StringBuffer();
            
            if(method!=null&&method.equalsIgnoreCase("get")){
            	requestUrl = requestUrl+"?"+urlEncode(params);
            }

            //默认get
            URL url = new URL(requestUrl);
            conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("GET");
            
            if(method!=null&&method.equalsIgnoreCase("post")){
            	 conn.setRequestMethod("POST");
                 conn.setDoOutput(true);
                 conn.setDoInput(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.equalsIgnoreCase("post")) {
                try {
                    DataOutputStream out = new DataOutputStream(conn.getOutputStream());
                    out.writeBytes(urlEncode(params));
                } catch (Exception e) {
                    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;
    }
	
	
	public static void main(String[] args) throws Exception{
		
		String domain="http://api.xiaocongjisuan.com/";
		String servlet="data/latestfilm/get";
		String method="get";
		
		String requestUrl=domain+servlet;
		Map<String,Object> params=new HashMap<String,Object>();
		params.put("appKey",APP_KEY);
		params.put("openId",OPEN_ID);

		//变动部分
		params.put("limit","20");
		
		String result=requestContent(requestUrl,params,method);
		System.out.println(result);
	}
}

PYTHON
# -*- coding: utf-8 -*-
# flake8: noqa
__author__ = 'wukong'

import urllib
from urllib import urlencode

#配置您申请的appKey和openId
app_key="***"
open_id="***"

"""
request_url 请求地址
params 请求参数
method 请求方法

"""
def request_content(request_url,params,method):
    params = urlencode(params)
    
    if method and method.lower() =="get":
        f = urllib.urlopen("%s?%s" % (request_url, params))
    else:
        f = urllib.urlopen(request_url, params)
 
    content = f.read()
    print content

   
def main():
    
    domain="http://api.xiaocongjisuan.com/"
    servlet="data/latestfilm/get"
    method="post"
    request_url=domain+servlet
    
    #字典
    params ={}
    
   params["appKey"]=app_key
    params["openId"]=open_id
    
    #变动部分
    params["limit"]="20"


    request_content(request_url,params,method)
    
if __name__ == '__main__':
    main()
PHP
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<?php

/**
 * @author 
 * @copyright 2019
 */
 
header("content-type:text/html;charset=utf-8");         //设置编码
 
//配置您申请的appKey和openId
$app_key = "***";
$open_id = "***";

/**
$url 请求地址
$params 请求参数
$ispost 请求方法
*/

function http_curl($url,$params=false,$ispost=false){
   
    $httpInfo = array();
    $ch = curl_init();

    curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
    curl_setopt( $ch, CURLOPT_USERAGENT , "xiaocongjisuan");
    curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );
    curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
    
    if( $ispost )
    {
        curl_setopt( $ch , CURLOPT_POST , true );
        curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
        curl_setopt( $ch , CURLOPT_URL , $url );
    }
    else
    {
        if($params){
            curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
        }else{
            curl_setopt( $ch , CURLOPT_URL , $url);
        }
    }
    
    $response = curl_exec( $ch );
    if ($response === FALSE) {
        //echo "cURL Error: " . curl_error($ch);
        return false;
    }
    $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
    $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
    curl_close( $ch );
    
    return $response;
}

function main(){
    
    global $app_key;
    global $open_id;
    
    $domain="http://api.xiaocongjisuan.com/";
    $servlet="data/latestfilm/get";
    $method="get";
    
    $url=$domain."".$servlet;
    
    $params['appKey']=$app_key;
    $params['openId']=$open_id;
    
    //变动部分
	$params["limit"]="20";
    
    //编码转换
    foreach ($params as $key=>$value) {
        $params[$key]=mb_convert_encoding($value, "UTF-8", "GBK");
    }

    $paramstring = http_build_query($params);
    $content = http_curl($url,$paramstring,true);
    
    return $content;
}

echo main();
?>
C#
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;

namespace ConsoleApplication1
{
    class Program
    {
        private static string appKey="yours";
        private static string openId = "yours";
       
        static string getResponseAsString(HttpWebResponse rsp, Encoding encoding)
        {
            System.IO.Stream stream = null;
            StreamReader reader = null;
            try
            {
                // 以字符流的方式读取HTTP响应
                stream = rsp.GetResponseStream();
                reader = new StreamReader(stream, encoding);
                return reader.ReadToEnd();
            }
            finally
            {
                // 释放资源
                if (reader != null) reader.Close();
                if (stream != null) stream.Close();
                if (rsp != null) rsp.Close();
            }
        }

        /*
         * parameters 参数
         * encode 编码
         */

        static string buildQuery(IDictionary<string,object> parameters, string encode)
        {
            StringBuilder postData = new StringBuilder();
            bool hasParam = false;
            IEnumerator<KeyValuePair<string, object>> dem = parameters.GetEnumerator();
            while (dem.MoveNext())
            {
                string name = dem.Current.Key;
                string value = dem.Current.Value.ToString(); ;
                // 忽略参数名或参数值为空的参数
                if (!string.IsNullOrEmpty(name))//&& !string.IsNullOrEmpty(value)
                {
                    if (hasParam)
                    {
                        postData.Append("&");
                    }
                    postData.Append(name);
                    postData.Append("=");
                    if (encode == "gb2312")
                    {
                        postData.Append(System.Web.HttpUtility.UrlEncode(value, Encoding.GetEncoding("gb2312")));
                    }
                    else if (encode == "utf8")
                    {
                        postData.Append(System.Web.HttpUtility.UrlEncode(value, Encoding.UTF8));
                    }
                    else
                    {
                        postData.Append(value);
                    }
                    hasParam = true;
                }
            }
            return postData.ToString();
        }


        /**
        *
        * @param url 请求地址
        * @param params 请求参数
        * @param method 请求方法
        * @return 请求结果
        * @throws Exception
        */
        static string requestContent(string url, IDictionary<string,object> parameters, string method)
        {
            if (method.ToLower() == "post")
            {
                HttpWebRequest req = null;
                HttpWebResponse rsp = null;
                System.IO.Stream reqStream = null;
                try
                {
                    req = (HttpWebRequest)WebRequest.Create(url);
                    req.Method = method;
                    req.KeepAlive = false;
                    req.ProtocolVersion = HttpVersion.Version10;
                    req.Timeout = 5000;
                    req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
                    byte[] postData = Encoding.UTF8.GetBytes(buildQuery(parameters, "utf8"));
                    reqStream = req.GetRequestStream();
                    reqStream.Write(postData, 0, postData.Length);
                    rsp = (HttpWebResponse)req.GetResponse();
                    Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);
                    return getResponseAsString(rsp, encoding);
                }
                catch (Exception ex)
                {
                    return ex.Message;
                }
                finally
                {
                    if (reqStream != null) reqStream.Close();
                    if (rsp != null) rsp.Close();
                }
            }
            else
            {
                //创建请求
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url + "?" + buildQuery(parameters, "utf8"));

                //GET请求
                request.Method = "GET";
                request.ReadWriteTimeout = 5000;
                request.ContentType = "text/html;charset=UTF-8";
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream myResponseStream = response.GetResponseStream();
                StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));

                //返回内容
                string retString = myStreamReader.ReadToEnd();
                return retString;
            }
        }

        static void Main(string[] args)
        {

            String domain = "http://api.xiaocongjisuan.com/";
            String servlet = "data/latestfilm/get";
            String method = "post";
            String url = domain + servlet;


            var parameters = new Dictionary<string,object>();

            parameters.Add("appKey", appKey);
            parameters.Add("openId", openId);

            //变动部分
            parameters.Add("limit", "20");

            string result = requestContent(url, parameters, method);
            Console.WriteLine(result);
            Console.Read();

        }

    }
}
GO
package main

import (
    "io/ioutil"
    "net/http"
    "net/url"
    "fmt"
	"strings"
)
 
//配置您申请的appKey和openId
const APP_KEY ="yours";
const OPEN_ID ="yours";

func requestContent(requestUrl string,params url.Values,method string)(rs[]byte ,err error){
	
	if strings.ToUpper(method)=="GET"{
		return get(requestUrl,params)
	}
	return post(requestUrl,params)
}

// get 网络请求
func get(requestUrl string,params url.Values)(rs[]byte ,err error){
    var Url *url.URL
    Url,err=url.Parse(requestUrl)
    if err!=nil{
        fmt.Printf("解析url错误:\r\n%v",err)
        return nil,err
    }
    //如果参数中有中文参数,这个方法会进行URLEncode
    Url.RawQuery=params.Encode()
    resp,err:=http.Get(Url.String())
    if err!=nil{
        fmt.Println("err:",err)
        return nil,err
    }
    defer resp.Body.Close()
    return ioutil.ReadAll(resp.Body)
}
 
// post 网络请求 ,params 是url.Values类型
func post(requestUrl string, params url.Values)(rs[]byte,err error){
    resp,err:=http.PostForm(requestUrl, params)
    if err!=nil{
        return nil ,err
    }
    defer resp.Body.Close()
    return ioutil.ReadAll(resp.Body)
}

func main(){

	domain :="http://api.xiaocongjisuan.com/"

	servlet :="data/latestfilm/get"
	method :="post"
	requestUrl:=domain+servlet
	
    //初始化参数
    params:=url.Values{}
	
	params.Set("appKey",APP_KEY)
	params.Set("openId",OPEN_ID)
	
	//变动部分
	params.Set("limit","20");
 
    //发送请求
    data,err:=requestContent(requestUrl,params,method)
    fmt.Println(string(data))
	if err!=nil{
        fmt.Printf("解析url错误:\r\n%v",err)
    }
}
NODEJS
var http = require('http'); 
var qs = require('querystring'); 

//配置您申请的appKey和openId
app_key = "***";
open_id = "***";
 
function request_content(request_url,port,params,method){
	
	var path=request_url;
	if(!!params){
		var content = qs.stringify(params);  
		path=request_url+'?' + content;
	}
	
	var options = { 
		port: port,
		path: path,
		method: method
	}; 
	
	if(method.toLowerCase()=='post'){
		options['headers']="Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8";
	}

	var req = http.request(options, function (res) { 
		res.setEncoding('utf8'); 
		res.on('data', function (chunk) { 
			console.log(chunk); 
		}); 
	});  
	
	req.on('error', function (e) { 
		console.log('problem with request: ' + e.message); 
	}); 
	
	req.end();
}

function main(){

	var domain="http://api.xiaocongjisuan.com/";
	var port=8080;//http对应80端口,https 对应443端口,请使用者自己改正
	var servlet="data/latestfilm/get";
	var method="post";
	var request_url=domain+servlet;

	var params = {}; 
	params['appKey']=app_key;
    params['openId']=open_id;
	
	//变动部分
	params["limit"]="20";
	
	request_content(request_url,port,params,method);
}

main();