20161011 社交分享、OSS学习及作业总结(内含文件上传模块资料)

20161011 社交分享、OSS学习及作业总结

社交分享开放平台##

微信开放平台
微博开放平台
腾讯开放平台

mob
聚合数据

作业##

  1. 商品详情页加入社交分享功能
  2. 使用阿里oss对象存储后台商品图片上传以及用户头像修改

作业总结##

社交分享

//此方法必须先给调用者的href赋值,否则会被QQ视为非法请求
  function qqFriend() {
        var p = {
            url: shareUrl, /*获取URL,可加上来自分享到QQ标识,方便统计*/
            desc: shareDes,
            title: shareTitle,
            summary: '', /*分享摘要(可选)*/
            pics: sharePicUrl, /*分享图片(可选)*/
            flash: '', /*视频地址(可选)*/
            site: shareUrl, /*分享来源(可选) 如:QQ分享*/
            style: '201',
            width: 32,
            height: 32
        };
        var s = [];
        for (var i in p) {
            s.push(i + '=' + encodeURIComponent(p[i] || ''));
        }
        var url = "http://connect.qq.com/widget/shareqq/index.html?" + s.join('&');
        return url;

    }

    function qqZone() {
        var _url = shareUrl;
        var _showcount = 0;
        var _desc = shareDes;
        var _summary = "";
        var _title = shareTitle;
        var _site = shareUrl;
        var _width = "600px";
        var _height = "800px";
        var _summary = "";
        var _pic = sharePicUrl;
        var _shareUrl = 'http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?';
        _shareUrl += 'url=' + encodeURIComponent(_url || document.location);   //参数url设置分享的内容链接|默认当前页location
        _shareUrl += '&showcount=' + _showcount || 0;      //参数showcount是否显示分享总数,显示:'1',不显示:'0',默认不显示
        _shareUrl += '&desc=' + encodeURIComponent(_desc || '分享的描述');    //参数desc设置分享的描述,可选参数
        _shareUrl += '&title=' + encodeURIComponent(_title || document.title);    //参数title设置分享标题,可选参数
        _shareUrl += '&pics=' + encodeURIComponent(_pic || '');   //参数pics设置分享图片的路径,多张图片以"|"隔开,可选参数
        window.open(_shareUrl, 'width=' + _width + ',height=' + _height + ',top=' + (screen.height - _height) / 2 + ',left=' + (screen.width - _width) / 2 + ',toolbar=no,menubar=no,scrollbars=no,resizable=1,location=no,status=0');
    }

    function tencentWeiBo(){
        var _url =shareUrl;
        var _showcount = 0;
        var _summary = "";
        var _title = shareDes;
        var _site = shareUrl;
        var _width = "600px";
        var _height = "800px";
        var _pic =sharePicUrl;
        var _shareUrl = 'http://share.v.t.qq.com/index.php?c=share&a=index';
        _shareUrl += '&title=' + encodeURIComponent(_title||document.title);    //分享的标题
        _shareUrl += '&url=' + encodeURIComponent(_url||location.href);    //分享的链接
        _shareUrl += '&appkey=5bd32d6f1dff4725ba40338b233ff155';    //在腾迅微博平台创建应用获取微博AppKey
        _shareUrl += '&pic=' + encodeURIComponent(_pic||'');    //分享的图片,如果是多张图片,则定义var _pic='图片url1|图片url2|图片url3....'
        window.open(_shareUrl,'width='+_width+',height='+_height+',left='+(screen.width-_width)/2+',top='+(screen.height-_height)/2+',toolbar=no,menubar=no,scrollbars=no,resizable=1,location=no,status=0');
    }

百度社会化分享,关键要给bdText及bdPic赋值

var bdjs = '<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"' + data[1].goodDes + '","bdMini":"2","bdMiniList":false,"bdPic":"' + sharePicUrl + '","bdStyle":"0","bdSize":"32"},"share":{}};';

bdjs += "with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];<\/script>";

阿里云OSS

//阿里云OSS配置
var co = require('co');
var OSS = require('ali-oss');
var client = new OSS({
    region: 'oss-cn-beijing',
    accessKeyId: 'D5h2xxxxxxxxxxxxx',
    accessKeySecret: 'U69xxxxxxxxxxxxxxxxxxxxxxx,
    bucket: 'xxxoss'
});

//存储到阿里云OSS
                        co(function*() {
                            var result = yield client.put(newName, des_file);
                            console.log(result);

                            //更新数据库中图片存储的本地路径
                            var updateData = {
                                $set: {
                                    goodPicLocalUrl: '/uploads/' + newName,
                                    goodPicOSSobject: newName
                                }
                            };

                            goodsModel.update({_id: insertId}, updateData, function (err, result) {
                                if (err) {
                                    console.log(err);
                                } else {
                                    res.json(['success', {
                                        id: insertId,
                                        msg: 'File uploaded successfully'
                                    }]);
                                    console.log("updated goodPicLocalUrl goodPicOSSobject!");
                                }
                            });

                        }).catch(function (err) {
                            res.json(['failed', {msg: err}]);
                            console.log(err);
                        });

获取OSS中的文件(不存储到本地)

                    var url = client.signatureUrl(result[x].goodPicOSSobject, {expires: 3600});

阿里云OSS提供了回源设置,商业网站应考虑好好利用此功能
文件上传功能参考了 Node.js(Express4.x)的Ajax处理2——文件上传(http://www.jianshu.com/p/375ea75a9426

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容