feilong tools ccvideo - venusdrogon/feilong-platform GitHub Wiki

Welcome to feilong-tools-ccvideo

获取 ccvideo 真实视频地址

注意该项目 since 1.14.0

1.简介:

此接⼝用于ccvideo 移动端 获取视频播放地址

2.:dragon: Maven使用配置

引用 feilong 工具类全家桶(含IO操作,Net操作,Json,XML,自定义标签等等工具类)

<project>

	....
	<properties>
		<version.feilong-platform>2.1.0</version.feilong-platform>
		....
	</properties>

	....
	<repositories>
		<repository>
			<id>feilong-repository</id>
			<url>https://raw.github.com/venusdrogon/feilong-platform/repository</url>
		</repository>
	</repositories>

	....
	<dependencies>
		....
		<dependency>
			<groupId>com.feilong.platform</groupId>
			<artifactId>feilong-util-all</artifactId>
			<version>${version.feilong-platform}</version>
		</dependency>
		....
	</dependencies>
	....
</project>

4 使用

4.1 step1 加载 xml

junit test 路径示例

@ContextConfiguration(locations = { "classpath*:feilong-spring-ccvideo.xml" })

目前 feilong-spring-ccvideo.xml 封装在 feilong-util-all jar 内

4.2 新增以及配置 config/ccVideoccVideo-account.properties

这个文件不同项目参数属性值不一样

示例:

#CC视频参数,用于获取mp4格式视频

#cc视频 api key
ccvideo.apiKey=hXLwY************yM11lxBe8IVg

#用户id 不可为空
ccvideo.userId=6293AC******************87D25

4.3 step 3 使用

 @Autowired
    @Qualifier("ccVideoHttpResponseStringBuilder")
    private HttpResponseStringBuilder<String> httpResponseStringBuilder;

    @Test
    public void test(){
        LOGGER.info(httpResponseStringBuilder.build("70E528D8283E22222222222222230249C33DC5901307461"));
    }

目前 固定 bean 名字是 ccVideoHttpResponseStringBuilder

5.日志输出

[com.feilong.tools.ccvideo.CCVideoRequestParamsBuilder] field's value map:
[{"ccVideoBeanProperty":     {
        "userId": "******",
        "authTimeout": "2592000",
        "format": "json",
        "httpsFlag": "0",
        "apiKey": "******"
    }}]
21:13:37 DEBUG (HttpRequestUriResolver.java:78) [resolve()] parse uri:[http://p.bokecc.com/api/mobile],request:[70E528D8283E22222222222222230249C33DC5901307461],result:[http://p.bokecc.com/api/mobile]
21:13:37 DEBUG (HttpUriRequestBuilder.java:68) [build()] httpRequest info:[    {
        "fullEncodedUrl": "http://p.bokecc.com/api/mobile?authtimeout=2592000&format=json&hash=123456&httpsflag=0&time=1560950017&userid=6293AC06BFB87D25&videoid=70E528D8283E22222222222222230249C33DC5901307461",
        "requestBody": "",
        "httpMethodType": "GET",
        "paramMap":         {
            "authtimeout": "2592000",
            "format": "json",
            "hash": "123456",
            "httpsflag": "0",
            "time": "1560950017",
            "userid": "6293AC06BFB87D25",
            "videoid": "70E528D8283E22222222222222230249C33DC5901307461"
        },
        "headerMap": {},
        "uri": "http://p.bokecc.com/api/mobile"
    }]
21:13:37 INFO  (HttpClientUtil.java:990) [getResponseBodyAsString()] request:[    {
        "fullEncodedUrl": "http://p.bokecc.com/api/mobile?authtimeout=2592000&format=json&hash=123456&httpsflag=0&time=1560950017&userid=6293AC06BFB87D25&videoid=70E528D8283E22222222222222230249C33DC5901307461",
        "requestBody": "",
        "httpMethodType": "GET",
        "paramMap":         {
            "authtimeout": "2592000",
            "format": "json",
            "hash": "123456",
            "httpsflag": "0",
            "time": "1560950017",
            "userid": "6293AC06BFB87D25",
            "videoid": "70E528D8283E22222222222222230249C33DC5901307461"
        },
        "headerMap": {},
        "uri": "http://p.bokecc.com/api/mobile"
    }],useConnectionConfig:[    {
        "readTimeout": 20000,
        "connectTimeout": 20000,
        "proxyAddress": "",
        "userName": "",
        "proxyPort": null,
        "password": "",
        "contentCharset": "UTF-8"
    }],resultString:[{"video":{"copy":[{"quality":"30","playurl":"http://cm15-c110-2.play.bokecc.com/flvs/ca/Qx4Vx/uOkySVnN9Z-30.mp4?t=1563542017&key=8D395176D6F7FA70704A407285B86433&tpl=10"}]}}]
21:13:37 INFO  (AbstractResponseStringBuilder.java:133) [logMessage()] request:[70E528D8283E22222222222222230249C33DC5901307461],responseString:[{"video":{"copy":[{"quality":"30","playurl":"http://cm15-c110-2.play.bokecc.com/flvs/ca/Qx4Vx/uOkySVnN9Z-30.mp4?t=1563542017&key=8D395176D6F7FA70704A407285B86433&tpl=10"}]}}],after use rebuilder:[com.feilong.tools.ccvideo.CCVideoJsonResponseStringRebuilder],will return:[http://cm15-c110-2.play.bokecc.com/flvs/ca/Qx4Vx/uOkySVnN9Z-30.mp4?t=1563542017&key=8D395176D6F7FA70704A407285B86433&tpl=10]
21:13:37 INFO  (SpringCCVideoManagerTest.java:26) [test()] http://cm15-c110-2.play.bokecc.com/flvs/ca/Qx4Vx/uOkySVnN9Z-30.mp4?t=1563542017&key=8D395176D6F7FA70704A407285B86433&tpl=10

6 附录

6.1 关于 config/ccVideoccVideo-common.properties

CC视频通用参数,通常不需要修改

#CC视频通用参数,通常不需要修改

#cc视频服务器地址
ccvideo.uri=http://p.bokecc.com/api/mobile
ccvideo.method=get

################################################################################

#返回值格式
#返回格式,xml 或 json,可选(不填返回xml) 
ccvideo.format=json

#值为1时返回https播放地址,可选(不填返回http播放地址)
ccvideo.httpsFlag=0

#url过期时间,单位 s,最小 1500 最大 2000000000(官方说法),这里设置30天,这个参数貌似没啥软用
#url过期时间,支持设置的有效最小值1800秒,可选(不填默认有效时间2小时)
ccvideo.authTimeout=2592000

如果你确实有需要, 可以在 项目中重新配置, 但是不建议

7. 参考

  • ccvideo MOBILE_API_v1.5.pdf

🌀 feilong 即时交流

QQ 群 243306798

🐼 About

如果您对本项目有任何建议和批评,可以使用下面的联系方式:

⚠️ **GitHub.com Fallback** ⚠️