mobile CCTV,mobile surveillance,police body worn cameras

 forgetPW
 registerNow
search
12NextPage
backToList newPost
view: 2717|reply: 11
打印 prevThread nextThread

web网页端http升级https问题

[copyURL]

2

主题

10

帖子

44

积分

newBie

Rank: 1

积分
44
jumpTo
owner
poston 2019-9-3 15:22 | authorOnly 回帖奖励 |倒序浏览 |阅读模式
   因为应电网公司要求,网络安全原本的http请求的网站升级了https,和你们那边的接入,比如视频这方面是 url: "http://127.0.0.1:8081", // bv_nginx.exe服务器地址。现在要升级为https。我看你们是用nginx服务的,http好像可以通过nginx服务加多认证升级成https。请问可以升级相关web接口服务,重新接入。因为在http网站可以引入https资源,反过来不可以。
我们目前使用的是贵司webAPI_nginx_2019_0611_1530_test.exe版本开发包。
盼复

本帖子中包含更多资源

pls login 才可以下载或查看,没有帐号?registerNow

x
reply

使用道具 report

6

主题

438

帖子

1722

积分

vipMem

Rank: 6Rank: 6

积分
1722
recommend
poston 2019-9-4 16:55 | authorOnly
周杰 post on2019-9-4 14:13
就想问问,引入那里配置的对不对....

你好,参考下这个页面, https://115.28.79.237:9443/Demo/login.html                root                 beso88
reply agree 1 Against 0

使用道具 report

10

主题

531

帖子

2493

积分

admin

Rank: 9Rank: 9Rank: 9

积分
2493
sofa
poston 2019-9-3 16:16 | authorOnly
WEB_API这个插件升级了,在网盘里面。
所有软件、文档手册,都开放在QQ微云网盘地址供开放下载:
https://share.weiyun.com/55EkBv1
reply agree Against

使用道具 report

2

主题

10

帖子

44

积分

newBie

Rank: 1

积分
44
bench
 Owner| poston 2019-9-3 16:17 | authorOnly
admin post on2019-9-3 16:16
WEB_API这个插件升级了,在网盘里面。
所有软件、文档手册,都开放在QQ微云网盘地址供开放下载:
https:/ ...

请问升级之后支持https调用吗
reply agree Against

使用道具 report

1

主题

589

帖子

2045

积分

vipMem

Rank: 6Rank: 6

积分
2045
ground
poston 2019-9-3 16:19 | authorOnly
您好,我们的webapi也是支持https方式访问的,默认端口是9443
端口可以在weiapi配置界面中配置,最后一个配置项“ssl port”
reply agree Against

使用道具 report

2

主题

10

帖子

44

积分

newBie

Rank: 1

积分
44
5#
 Owner| poston 2019-9-3 16:46 | authorOnly
fanghj90 post on2019-9-3 16:19
您好,我们的webapi也是支持https方式访问的,默认端口是9443
端口可以在weiapi配置界面中配置,最后一个 ...

多问一下,我那个版本的web_api_nginx也就是说原本支持https方式访问。就我那张帖子里视频接入的图片来说。代码引入地址 src 和 url 都换成对应的https:服务器地址:9443,还是说只换播放视频的url地址,原本代码引入的http:127.0.0.1:8081/js/jsw.js不变
reply agree Against

使用道具 report

6

主题

438

帖子

1722

积分

vipMem

Rank: 6Rank: 6

积分
1722
6#
poston 2019-9-3 16:57 | authorOnly
周杰 post on2019-9-3 16:46
多问一下,我那个版本的web_api_nginx也就是说原本支持https方式访问。就我那张帖子里视频接入的图片来 ...

都要换成从https端口引入。8081和9443的区别就是多了个ssl
reply agree Against

使用道具 report

2

主题

10

帖子

44

积分

newBie

Rank: 1

积分
44
7#
 Owner| poston 2019-9-3 19:11 | authorOnly
IBeli post on2019-9-3 16:57
都要换成从https端口引入。8081和9443的区别就是多了个ssl

我们这个是调用的websoket,需要https支持的wss协议,你们这个可以支持吗
reply agree Against

使用道具 report

6

主题

438

帖子

1722

积分

vipMem

Rank: 6Rank: 6

积分
1722
8#
poston 2019-9-3 19:13 | authorOnly
周杰 post on2019-9-3 19:11
我们这个是调用的websoket,需要https支持的wss协议,你们这个可以支持吗。麻烦看下我视频端引入。和错误 ...

wss是支持的。需要公网地址,或者远程
reply agree Against

使用道具 report

2

主题

10

帖子

44

积分

newBie

Rank: 1

积分
44
9#
 Owner| poston 2019-9-4 10:23 | authorOnly
IBeli post on2019-9-3 19:13
wss是支持的。需要公网地址,或者远程

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <title>video</title>
</head>

<body>
    <input type="button" value="登录" onclick="testLogin()" />
    <input type="button" value="退出" onclick="testLogout()" />
    <input type="button" value="查看设备列表" onclick="testShowPuList()" />
    <input type="button" value="打开视频" onclick="testOpenVideo()" />
    <input type="button" value="关闭视频" onclick="testCloseVideo()" />
    <input type="button" value="全屏" onclick="testFullScreen()" />
    <input type="button" id='id_GetUrl_Button' value="获取URL" disabled="disabled" onclick="testGetUrlVideo()" />
    <input id="id_JustUrl_NoPlay" type='checkbox' />只获取Url,不进行播放
    <div id="msg"></div>
    <div id="id_video" style="width:500px; height:400px"></div>
    <div id="id_url_info" style="width:500px; height:200px"></div>
</body>

</html>

<!-- <script type="text/javascript" src="./jsw.js"></script> -->
<!-- <script type="text/javascript" src="http://121.46.30.xxx:8081/js/jsw.js"></script> -->
<script type="text/javascript" src="https://121.46.30.xxx:9443/js/jsw.js"></script>
<script type="text/javascript">
    var VEDIO_SESSION = null,
        VEDIO_PUID = null,
        VEDIO_CHANNELID = null,
        LOGIN_SERVER = '121.46.30.xxx',//此处是服务器地址
        LOGIN_PORT = 9701,
        SWINIT_URL = "https://121.46.30.xxx:9443",
        
        LOGIN_ACCOUNT = 'adminningbo',
        LOGIN_PWD = 'ningbo2019618';

    var session = null;
    /*
        hdlg: Number
        hdlg为打开的视频通道的句柄,唯一标记某个视频窗口。
        在打开通道swOpenEx接口的回调中,会通知该句柄。
        详见swOpenEx接口参数。在多打开的情况中,对视频窗口的操作都需要填入该句柄。
        所以您需要保存该句柄值,并在调用接口时填入。
     */
    var hdlg = null;

    function testLogin() {
        if (session) { delete session; }
        session = new jSW.SWSession({
            server: LOGIN_SERVER, // 如果是jSW.CallProtoType.OCX方式,这里需要填写具体的IP
            port: LOGIN_PORT,
            onopen: function (sess) {
                sess.swLogin({
                    user: LOGIN_ACCOUNT,
                    password: LOGIN_PWD
                });
            }
        });


        // 注册事件的回调函数
        session.swAddCallBack('login', sessionCallback);
        session.swAddCallBack('logout', sessionCallback);
    }

    function testLogout() {
        if (session) {
            session.swLogout();
        }
    }


    // 显示设备列表信息
    function testShowPuList() {
        if (session) {
            console.log("session", session);
            var msg = '<ul>';

            var pulist = session._arr_pu;
            console.log("pulist", typeof pulist, pulist)
            for (var i = 0; i < pulist.length; i++) {
                var pu = pulist;

                // console.log("pu", pu)


                var puinfo = pu._info_pu;
                msg += '<li><font color="red">id:' + puinfo.id + '</font></li>'
                    + '<li>name:' + puinfo.name + '</li>'
                    + '<li>onlinestatus:' + puinfo.onlinestatus + '</li>'
                    + '<li>bootduration:' + puinfo.bootduration + '</li>';

                msg += '<li>video chanel:</li><ul>';
                var videolist = pu._arr_channel;
                for (var j = 0; j < videolist.length; j++) {
                    var video = videolist[j];
                    var videoinfo = video._info_chanel;
                    msg += '<li>id:' + videoinfo.id
                        + ' name:' + videoinfo.name
                        + ' status:' + videoinfo.status
                        + ' ptz:' + videoinfo.ptz + '</li>';
                }
                msg += '</ul>';

                msg += '<li>gps chanel:</li><ul>';
                var videolist = pu._arr_gps;
                for (var j = 0; j < videolist.length; j++) {
                    var video = videolist[j];
                    var videoinfo = video._info_chanel;
                    msg += '<li>id:' + videoinfo.id
                        + ' name:' + videoinfo.name + '</li>';
                }
                msg += '</ul><br/>';
            }

            document.getElementById('msg').innerHTML = msg + '</ul>';
        }
    }

    function getPuList() {
        if (session) {
            var pulist = session._arr_pu;
            var pu = pulist["0"];
            // console.log("session",session)

            console.log("pulist", typeof pulist, pulist)
            console.log("pu", typeof pu, pu);

            // 默认播放第一个
            var puinfo = pu._info_pu;
            var puId = puinfo.id;
            var videolist = pu._arr_channel;
            var video = videolist[0];
            var videoinfo = video._info_chanel;
            var chanelId = videoinfo.id;

            console.log("puId:", puId);
            console.log("chanelId:", chanelId);

            return {
                puId: puId,
                chanelId: chanelId
            }
        }
    }

    function sessionCallback(sender, event, json) {
        var info = '';
        if ('login' == event) {
            info += '登录';
        } else if ('logout' == event) {
            info += '退出';
        }

        if (json.code == jSW.RcCode.RC_CODE_S_OK) {
            info += '成功';

            // 成功之后获取播放列表并播放视频
            // 立即执行获取不到session._arr_pu;
            setTimeout(function () {
                var playInfo = getPuList();
                console.log(playInfo);
                testOpenVideo(playInfo.puId, playInfo.chanelId)
            }, 500)
        } else {
            info += '失败, error code: ' + json.code;
        }

        document.getElementById('msg').innerHTML = info + '<br/><textarea rows="18" cols="100" readonly="readonly"> ' + JSON.stringify(json, null, 4) + '</textarea>';
    }

    function testOpenVideo(puId = "PU_10150", chanelId = 0) {

        var chanel = session.swGetPuChanel(puId, chanelId);
        console.log("chanel", chanel)
        var strVideoDivId = document.getElementById('id_JustUrl_NoPlay').checked == true ? null : 'id_video';
        if (chanel) {
            var result = chanel.swOpenEx({
                div: strVideoDivId,
                prototype: 'auto', //rtmp > hls
                callback: function (options, response, dlghandle) {
                    // alert(response.emms.code + "视频打开成功,可以获取URl了");
                    console.log(response.emms.code + "视频打开成功,可以获取URl了");
                    console.log("options", options);
                    console.log("response", response);
                    console.log("dlghandle", dlghandle);
                    hdlg = dlghandle.hdlg;
                    document.getElementById('id_GetUrl_Button').disabled = 'false';
                }
            });

            if (result != jSW.RcCode.RC_CODE_S_OK) {
                alert('打开视频失败: ' + result);
                document.getElementById('id_GetUrl_Button').disabled = 'true';
            }
        } else {
            alert('没有该设备通道');
        }
    }


    function testCloseVideo() {
        var szpuid = 'PU_10150';
        var channelindex = 0;
        var chanel = session.swGetPuChanel(szpuid, channelindex);
        var result = chanel.swClose();
        if (result != jSW.RcCode.RC_CODE_S_OK) {
            alert('关闭视频失败: ' + result);
        }
    }

    // 指定dom元素进入全屏模式
    function launchFullscreen(element) {
        if (element.requestFullscreen) {
            element.requestFullscreen();
        } else if (element.mozRequestFullScreen) {
            element.mozRequestFullScreen();
        } else if (element.msRequestFullscreen) {
            element.msRequestFullscreen();
        } else if (element.webkitRequestFullscreen) {
            element.webkitRequestFullScreen();
        }
    }

    function testFullScreen() {
        var szpuid = 'PU_10150';
        var channelindex = 0;
        var chanel = session.swGetPuChanel(szpuid, channelindex);
        var result = chanel.swFullScreen(hdlg);

        if (result != jSW.RcCode.RC_CODE_S_OK) {
            alert('全频失败: ' + result);
        }
    }

    function testGetUrlVideo() {
        var chanel = session.swGetPuChanel('PU_55AA0000', 0);
        var url = chanel.swGetUrl();
        document.getElementById('id_url_info').innerHTML = JSON.stringify(url, null, 4);
    }

    window.onload = function () {
        jSW.swInit({
            url: SWINIT_URL, // bv_nginx.exe服务器地址
            calltype: jSW.CallProtoType.AUTO, // AUTO: IE优先使用OCX, 如果希望IE仍然使用HTTP通信, 请使用jSW.CallProtoType.HTTP
            oninit: testLogin
        });
    }
    window.onbeforeunload = function () {
        jSW.swDeInit();
    }

</script>

请问有相关的视频引入示例吗,对前端也不是很了解,参照你们的示例我们这边这样引入,会报Websocket connection to‘ws://121.46.30.xxx:9443/jswapi' failed:Error during WebSorcket handshake :xxxxxx,Unexpected responses code:400 等错误
reply agree Against

使用道具 report

10

主题

531

帖子

2493

积分

admin

Rank: 9Rank: 9Rank: 9

积分
2493
10#
poston 2019-9-4 10:59 | authorOnly
兄弟,代码的东西,不要太急,自己需要多熟悉下,多调试下,多baidu下。
reply agree Against

使用道具 report

creditRule

QQ|wireless surveillance

GMT+8, 2024-12-26 08:59 , Processed in 0.064455 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

QuickReply backToTop BackToList