-
为了提高网站联系方式准确率,工信部要求现在所有省市的用户在华为云提交备案申请后,还需完成短信核验,备案订单申请才能进入管局审核。具体的操作流程:1、 进入工信部网站(beian.miit.gov.cn),单击短信核验。进入短信核验界面之后,填写信息。说明: 1>当主体负责人收到验证码时,手机号码应填写备案订单中主体负责人的手机号码,证件号码应填写用于本次备案的证件(如身份证、护照、港澳通行证等)号码后六位。同理,网站负责人收到验证码时,填写对应的负责人信息。2>新增接入备案短信核验只验证网站负责人的手机号码。如若此次备案的网站负责人信息和之前的信息一致,则直接填写验证即可。如若此次备案的网站负责人信息和首次在其他接入商负责人信息不一致,则验证之前网站负责人的号码信息。若之前负责人联系不上,只能在之前的接入商进行变更备案,待变更成功之后再接入。2、验证通过后,系统提示核验完成。注:收到验证码之后需在 24 小时内,访问省管局网站进行验证。短信验证通过后,您的备案信息将流转至管局审核。若 24小时内没有进行验证或验证失败,备案订单将会自动退回。
-
尊敬的Huawei HoloSens Store(华为好望商城)合作伙伴:您好!Huawei HoloSens Store(华为好望商城)首页广告位现开放给大家申请,各位伙伴如有活动推广,算法展示的需求,欢迎申请广告位! l 申请条件:入驻Huawei HoloSens Store(华为好望商城)的服务商l 资源位置:(见下图)l 广告位主题1、 合作伙伴商品促销、新品推荐、商家展示2、 伙伴活动促销、周年庆等*仅供参考,与Huawei HoloSens Store(华为好望商城)有关即可,以实际评估为准 l 广告位申请与下架规则:1.业务方在一个月内广告位申请次数不得超过2次。2.广告位申请时间一般不能超过二周,有空位的情况可以延期。3.临时申请:如热点事件,可直接邮件发送至holosensstore@huawei.com。4.已经纳入排期的广告资源位,若本月放弃排期或因物料未提前准备导致逾期,取消本月至下个月的申请需求。5.推广商品下架、活动下线须提前3天邮件通知发送至holosensstore@huawei.com,如未及时通知造成404、过期活动宣传等问题,暂停下个月申请广告位资格。l 广告位申请流程:1. 从附件中下载《Huawei HoloSens Store(华为好望商城)广告位申请表》,填好信息后将文件发送至邮箱 holosensstore@huawei.com,邮件主题为:xx(伙伴名称)+广告位申请排期。2. Huawei HoloSens Store(华为好望商城)相关人员会回复申请结果和广告实际上线时间。3. 确定排期后,伙伴按照Huawei HoloSens Store(华为好望商城)首页广告位规范&模版(见附件)提供相应物料,并同步准备伙伴官网所需物料。4. 在广告上线一周前将制作好的物料发送至邮箱holosensstore@huawei.com进行物料规范审核,邮件主题为:xx(伙伴名称)+Huawei HoloSens Store(华为好望商城)广告位宣传物料,待审核通过即可如期发布广告。5. 需求方需要在自身官网同步发布活动Banner,并链接到Huawei HoloSens Store(华为好望商城)官网购买算法。 Huawei HoloSens Store(华为好望商城)官网链接:https://marketplace.huaweicloud.com/markets/holosensstore/index.htmll 广告位上线流程图:l 广告位变更流程:业务方邮件发送至holosensstore@huawei.com,说明广告位变更原因,经确认由Huawei HoloSens Store(华为好望商城)广告位负责人按照需求时间执行下线。l 广告位下线流程:按照需求时间由Huawei HoloSens Store(华为好望商城)广告位负责人执行下线。l 广告位物料制作流程示例:附件:《Huawei HoloSens Store(华为好望商城)广告申请表》
Felix-Kinley
发表于2020-07-16 09:22:14
2020-07-16 09:22:14
最后回复
Felix-Kinley
2020-07-16 09:22:14
4370 0 -
背景:“华为杯”第二届中国研究生人工智能创新大赛,选择企业赛题-客观题(面向未知域和未知类别的小样本学习)的同学需在大赛官网(https://cpipc.chinadegrees.cn/)和华为云大赛平台报名,在华为云大赛平台提交作品。目前有部分团队位在中国研究生创新实践系列大赛官方网站完成报名,如在7月20日前未在中国研究生创新实践系列大赛官方网站完成报名,则报名无效。中国研究生创新实践系列大赛官方网站报名链接:https://cpipc.chinadegrees.cn/华为云大赛平台报名链接:https://competition.huaweicloud.com/information/1000041227/introduction要求:1、以下队伍于7月20日前,在中国研究生创新实践系列大赛官方网站(https://cpipc.chinadegrees.cn/)完成报名,且报名信息(含团队名称)与华为云大赛平台保持一致。2、如已经在中国研究生创新实践系列大赛官方网站报名,请在华为云大赛平台修改团队名称,与中国研究生创新实践系列大赛官方网站团队名称保持一致!注意:要求华为云大赛平台团队名称与大赛官方网站团队名称一致,不是华为云账号与大赛官网网站团队名称一致!团队名称aweijxDon't look back 重在参与飞飞4396白马义从sloth0713dali&ruoruo冲冲冲NoGPUBoyCOMATES学术之光smallwhite球心队NAS-bug牛奶面包我都要DAQAQ实业兴邦不知道起什么名牛逼哄哄franco52576搬砖小分队nn_Log拿不了第一名倒立吃屎来的快月亮AAreach2021乘风破浪JKevenMaster-人工智能一队302小队小汤圆Type.F3内卷也不怕五号线我们来凑数
-
【摘要】 本文轻松介绍云速建站各种场景下的实操指南,既适合新手入门也适合解决建站方面的疑惑,不断刷新中。云速建站服务介绍云速建站服务(Cloud Site-building Service)是一款OEM建站行业内的华为云服务。具有操作简单,任意布局,一次编辑,多设备适应等特点。无需代码,自由拖拽,并可提供PC 、手机 、微信网站 、小程序 、 APP五站合一的模板建站产品,快速生成中小企业网站及网店、微信网店等,内置丰富营销推广工具,有超过64种营销应用。了解更多◀云速建站当前版本有入门版、标准版和营销版三种业务网站配置,如下图所示。入门版:展示型,适合小微企业/PC品牌官网展示。标准版:业务推广型,适合中小企业/形象展示/业务推广。营销版:全网营销型,适合中小企业/网站推广/全网营销。云速建站服务规格图云速建站干货合集【云速建站】域名配置指导【云速建站】让你轻轻松松建立属于自己的网店【云速建站】备案专题【云速建站】按照给定模板从0开始编辑网站页面【云速建站】SSL证书自助部署【云速建站】底版的创建和使用【云速建站】对接微信公众号、快捷支付、小程序【云速建站】导航栏的使用【云速建站】为什么手机访问站点内容完全不对【云速建站】后台数据批量导入导出【云速建站】后台配置邮费【云速建站】产品分类的导入【云速建站】网站备份【云速建站】搜索框插件的设置和使用【云速建站】修改店名及页面内容区大小【云速建站】页面产品维护简述【云速建站】微信公众平台中维护IP白名单【云速建站】怎么把店铺生成二维码,让别人扫描二维码就可以访问店铺【云速建站】如何实现多用户权限管理【云速建站】按照浏览器大小适配网页【云速建站】视频播放专题【云速建站】在百度上搜不到我的网站?【云速建站】网站的基本设置【云速建站】文件专题(上传、下载、管理)【云速建站】不要再纠结手机导航栏样式了!【云速建站】会员注册弹窗添加及设置【云速建站】多语言站点集合【云速建站】点击页面元素不跳转问题解决方法★【云速建站】如何在文字或图片上加“超链接”?文件怎么打开?如何使用我自己录制的视频?★【云速建站】多语言站点集合【云速建站】表单应用【云速建站】10分钟出特效系列(一)【云速建站】模板的购买及使用【云速建站】一键生成手机页【云速建站】几个基本概念和流程解释【云速建站】华为云短信对接专题【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:huaweicloud.bbs@huawei.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
-
华为云奖励推广计划,是指推荐人分享自己的推广链接推荐新用户注册并购买指定产品,从而获得丰厚返利奖励。您在空闲时间用手机电脑都能推广,有一个时间灵活可控、还能技术变现的赚钱方法摆在你面前。那么,如何通过华为云奖励推广计划获得更多收益呢?推广指南的攻略分享不能错过! 在这里主要为大家分享内容是如何进行推广,了解推广步骤之后,三步即可完成推广获得华为云高额返利。华为云奖励推广三大优势1.关联期内有效新购订单均可返利,返利比例高至34%2.单月结算,现金返利3.多种爆款产品/优惠活动助力推广 如何建立有效关联复制分享专属推广链接,好友通过你分享的链接注册即成为你的关联客户,关联期30天 三步带你赚取华为云高额返利 1.点击“立即推广”复制推广链接进行分享推广素材: 超多特惠产品素材,下载素材包并使用,让你的推广有场景易转化推广链接: 一键复制你希望推广的华为云活动产品,生成后分享让关联更自然更简单 2.用户通过链接注册建立关联并下单购买指定产品关系渠道:身边友好客户或有交集的人群,以代金券和活动优惠切入转化成交站点渠道: 针对站长和博客人群,通过内容利益点广告切入,将流量价值最大化社交渠道: 常见的社交圈子如朋友圈、QQ群、微信等软件在社交人群中定点推广线上渠道: 程序员社区、IT技术圈等频道结合各种软文推广 3.成功下单符合活动规则即可获得返利关联客户:好友通过你分享的链接注册即成为你的关联客户,关联期30天返利订单:关联期间内客户新购参与返利产品,返利订单在次月返利统计后效验为有效订单即可获得返利。返利规则:新购实付订单金额>0元的客户方为有效客户,2020年12月起,每月的推广返利将会分四个月发放到您的银行卡内。当月推荐首付客户≥3人时,返利比例会额外增加1%,最高当月推荐首付客户≥10人时,最高额外增加3%返利比例,最高返利比例可以达到31%。如果连续2个月推广有效客户,返利比例会额外增加1%;最高连续4个月推广有效客户,最高额外增加3%返利比例,最高返利比例可以达到34%推广客户数奖励与连续推广奖励可叠加,且两项额外奖励需满足条件相互无冲突,满足任意一种条件即可获得对应的额外奖励。2020年12月起,推广返利分四个月发放到云推官已通过商业信息认证的银行卡内(返利发放比例为:20%、20% 、 20%、40%),请您务必绑定正确的银行卡信息,以确保返现奖励正常发放 如何高效推广 推广奖励计划获得更多客源的突破口是:占据或结合活动合法创造流量入口使新用户注册账号成为潜在客户。所以需要尽可能做大潜在客户的人数,足够多的客户才可能产生足够多的新用户和高奖励。借助社群推广:相关群聊(站长群、技术分享交流群等):可以在QQ群搜索相关关键词,寻找目标客户群。也可以论坛网站、博客社区、新媒体、电商平台等各个渠道推广。 内容营销推广:分享发软文推广,让潜在用户享受到实惠,如信息获取的便利,技术知识的获取。可以发布华为云最新活动的产品优惠,相关上云的技术攻略等文章,与潜在客户建立关联进行推广。技术服务推广:适用于有一定云计算技术的推广者,可以给客户提供一定技术指导或服务,来推广转化。自建网站:学习云计算等IT知识,如懂软件编写与开发,使用华为云的主机建站或有个人网站(博客),可以嵌入广告或持续写文章发软文;网站排名:通过竞价来获取流量的,这种方法需要有百度竞价账户,当然其他搜索引擎也是类似 关于奖励推广计划常见热门问题 1.推广哪些产品可以获得返利? 适用产品:可参与返现的产品有弹性云服务器、虚拟私有云、云硬盘、云数据库、对象存储服务、企业主机安全、 DDoS高防、分布式缓存服务、管理检测与响应等107款产品。其他产品均不参加返利,另储值卡、资源包、按需套餐包付费订单类型也不纳入返利计算,点击查看更多返利产品注:云速建站产品12月起不参与返利 2.推广订单如何计算奖励?推荐产生关联的新注册用户,关联关系建立后的30天内产生的有效新购订单累计付费均可计入返利,推荐金额为活动期间的实际付费金额(续订订单不计为有效订单)。推广奖励返利=订单实际支付现金金额×返现比例(阶梯奖励+额外任务奖励+连续推广奖励)。阶梯返现为20%-28%,额外任务和连续推广奖励为0%~6%,所以推广最高可获34%奖励。点击查看返利规则>> 3.云推官获得的返利多久结算?我们会在次月进行上月推广费用的计算,预计次月末现金发放到账户。具体发放时间请以实际情况为准。4.返利如何发放? 自8月1号华为云奖励推广计划奖励升级为现金返利,8月起参与推广产生的订单即可获得现金返利,8月前推广的订单依旧按历史规则返京东E卡或代金券。现金奖励会直接发放到云推官在华为云账号中心-商业信息认证绑定的银行卡中,请云推官务必绑定正确的银行卡信息,以确保奖励正常发放。需特殊注意:1.建立了关联的客户,就一定会返利嘛?不一定。建立有效的关联是推广的前提条件,成功建立关联后,如果被风控拦截,订单无法参与返利,如果购买产品为非返利产品或金额不满足返利条件,订单关联成功也无法参与返利。2.哪些情况推广订单不返利? ⑴推广下单的产品不在返利产品范围内;查看可参与返利产品明细⑵不是新客户⑶发生退款行为⑷风控判定云推官与客户存在同手机号、同邮箱、同身份证,同IP、同设备注册或登录等风控信息⑸用户账号判定违规(如涉及黑卡黑产、违规操作、违反华为云用户协议等)⑹结算时用户身份发生变化(如变更为渠道以及子客户,NA客户等)3.被推荐客户使用代金券、优惠券、储值卡支付是否返利?仅按照实付金额返利,实付金额不含代金券、优惠券等支付部分,储值卡支付部分也不会计算返利。4.已注册的华为云账号是否能与云推官建立关联?目前推荐产生关联仅适用于新注册用户,已经注册的用户通过推荐链接直接购买产品无法产生关联,不能计算返利。 了解更多推广相关问题请查看以下内容推广活动规则:cid:link_2商业信息认证FAQ:cid:link_3奖励推广常见热门问题:cid:link_4
-
【转载华为云社区】TLS协议,即传输层安全性协议(Transport Layer Security,TLS),是一种安全协议,目的是为了保障互联网通信的安全和数据完整性。截止目前,TLS按发行年份,分了4个版本,即1.0、1.1、1.2和1.3,1.0和1.1版本由于发布时间久远,安全性能已经不能满足通信协议的安全标准。华为云Web应用防火墙为了满足行业客户的安全需求,发布定制化的TLS版本和加密套件配置功能。您可以根据不同域名的需求,在Web应用防火墙的控制台配置禁用低版本的TLS协议以及加密套件,做灵活的TLS版本支持配置,WAF还能通过AI、主动探测等技术识别针对HTTPS的攻击,消除潜在威胁,达到更高的安全防护要求。TLS1.0版本于1999年发行,业内已经广泛认识到该版本容易受到各种攻击(BEAST、POODLE等)。为了保障通信协议的安全,满足支付卡行业数据安全标准(PCI DSS), 支付卡行业安全标准委员会(PCI SSC)规定TLS1.0安全通信协议于2018年6月30日不再生效。火狐、Safari、Chrome、Edge等主流浏览器厂商也声明将于2020年全面停止支持TLS1.0和1.1。防护场景如果客户源站安全性能要求很高,只允许TLS1.2以上的版本的协议访问,则在WAF中,配置的最低TLS版本为TLS v1.2,WAF将自动拦截TLS1.0和1.1版本协议的访问请求。如果客户源站安全性能要求一般,允许TLS1.1以上的版本的协议访问,则在WAF中,配置的最低TLS版本为TLS v1.1,WAF将自动拦截TLS1.0版本协议的访问请求。如果客户端APP只支持TLS1.0的版本,为了确保访问正常,在WAF中,配置的最低TLS版本为TLS v1.0,此时,所有的TLS协议都可以访问源站。TLS1.0和1.1版本的协议由于发布时间久远,某些加密算法已经不安全了,如SHA1、RC4算法,很容易被黑客攻击;在性能上,TLS1.0和1.1已经无法满足呈几何级增长的数据传输加密,存在安全隐患,性能不佳。如果您的客户端APP只支持TLS1.0和1.1版本,建议升级到TLS1.2以上的版本。防护配置 TLS配置配置前,可以先通过“https://myssl.com/ssl.html”检测网站支持的TLS版本。验证效果假如源站配置了允许访问的最低TLS版本为TLS v1.2。则TLS v1.1及以下协议不能正常访问网站。可通过以下命令在本地验证是否配置成功:openssl s_client -connect XX.XX.32.443 -servername "XX.XXX.com" -tls1_X如果能返回证书相关信息,则表示允许该TLS版本的协议访问目标网站,反之则表示拦截了该版本的TLS协议的访问。验证TLS v1.1协议是否能访问目标网站。没有获取到证书信息,表示TLS v1.1协议不能访问目标网站,WAF成功拦截了TLS v1.1协议的请求。验证TLS v1.2协议是否能访问目标网站。获取到证书信息,表示TLS v1.2协议能正常访问目标网站。
-
上回说到,公司的新业务增长速度放缓,运营部门提出要发展短视频来促进更快的业务增长,而我也因为提前准备好了技术预案再一次得到老板的赞赏(了解详情请看上集:一个技术预案,让老板当场喊出了奥利给)。 既然万事俱备了,公司就着手开始做短视频业务。本着最小化成本验证、快速迭代的原则,公司并没有大规模地去推进,而是先开发一个简单的短视频网站,招聘了一个妹子来做运营,先跑着看看效果再决定要不要加大投入。 说到这个运营妹子,那可真是青(fu)春(bai)朝(mao)气(mei)有(da)活(chang)力(tui),听说她自己在短视频平台的账号就有几十万粉丝,还是什么穿搭博主。我们组那个985名校实习生明显感觉来公司上班的劲头都足多了。 你还别说,新来的运营妹子三天两头跑过来找我们实习生小哥,今天拜托给连个外接显示器,明天请帮忙查个网站新用户数,经常就听见:“小哥哥,你看这个要怎么实现呀~”小哥哥那也是有求必应,毕竟萌妹子嘛,总是不好拒绝,不像我们产品大哥要提个需求,那简直是山崩地裂。 前两天运营妹子突然跑过来问:“小哥哥,我这个网站可以放到一个单独的IP地址上么?”原来她遇到一个问题:新网站受原来网站的影响,不好做优化,负责网站优化的同事告诉她需要换一个单独的新IP地址。 这个需求可把小哥哥给难住了,向来有求必应的他不知道怎么办才好,只能说:“每个服务器只有一个IP地址,如果要换IP地址,可能需要部署到新的服务器上,这个需要和老板协商…”运营妹子一听实现不了,明显就有些不开心了地走了,留下小哥哥在原地不知所措。 唉,还是太年轻呀,让老夫来帮你一把吧。我把实习生喊过来说:“想要有单独的IP地址不需要申请新的服务器,在现在的华为云弹性云服务器上挂载一个新的网卡就行了,只需要3步就可以实现。而且双网卡配置还能提升服务器带宽,提升短视频的访问速度。” 真的么?实习生小哥两眼冒光,特别期待地问我:“那怎么实现呀,我快点弄好,给她一个惊喜!说不定今天晚上就能一起去看电影了呢。” 具体操作嘛,很简单,很快我就给他写了一个操作文档:《3步实现弹性云服务器挂载网卡》内容详情《3步实现弹性云服务器挂载网卡》步骤1:创建网卡,发送POST请求,记录subnet 、network、port等ID。1、创建网络1)发送一条POST请求。POST:https://{endpoint}/v2.0/networks,其中endpoint是云服务器所在的区域节点。Body:{ "network": { "shared": false, "name": "demo-net", "admin_state_up": true, "tenant_id": "74610f3a5ad941998e91f076297ecf27" } }2)记录返回响应中“network”的ID。{ "network": { "id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "name": "demo-net", "status": "ACTIVE", "shared": false, "subnets": [], "availability_zone_hints": [], "availability_zones": [ "az_test_01", "az_test_02" ], "admin_state_up": true, "tenant_id": "74610f3a5ad941998e91f076297ecf27", "provider:network_type": "vxlan", "router:external": false } }2、创建子网1)发送请求。POST:https://{endpoint}/v2.0/subnetsBody:{ "subnet": { "name": "testsubnet", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1", "cidr": "10.0.10.0/24" } } 2) 记录响应中“subnet”的ID。{ "subnet": { "name": "testsubnet", "cidr": "10.0.10.0/24", "id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1" } }3、创建端口1)发送请求。POST:https://{endpoint}/v2.0/portsBody:{ "port": { "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5" } ], "name": "test", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27" } } 2) 记录响应中“port”的ID { "port": { "id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "name": "test", "status": "DOWN", "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "mac_address": "fa:16:3e:db:91:f6", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "device_id": "", "device_owner": "", "security_groups": [ "93031677-2895-4b83-855a-637e309aa9e6" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {} } }步骤2:挂载网卡 1)发送请求。URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/os-interface示例POST:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interfaceBody:{ "interfaceAttachment": { "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4" } } 2)响应示例{ "interfaceAttachment": { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } } 步骤3:确认挂载结果。1) 发送请求。URI格式:GET /v2.1/{tenant_id}/servers/{server_id}/os-interface示例GET:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface2)响应示例{ "interfaceAttachments": [ { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "46712fe4-25bd-4eae-874b-a528abfb76be", "ip_address": "192.168.0.50" } ], "port_id": "dd706739-b696-40be-a9f4-477ce478cb18", "net_id": "17251a8f-a671-4d7c-85d9-af5415962994", "mac_addr": "fa:16:3e:a5:e0:3c" }, { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } ] }看到"port_state": "ACTIVE",就表示我们已经挂载好网卡了。 据说,由于疫情的原因,当天两人电影是没看成,但是正式处对象了……万万没想到,一个技术方案还让我当了一次月老。从此以后,实习生小哥看到我那叫一个毕恭毕敬~ 据了解,目前API Explorer平台已开放EI企业智能、计算、应用服务、网络、软件开发平台、视频等70+云服务,共上线2000+个API、6000+个错误码。在前期试运行期间,华为云API Explorer平台上的API接口也已被多家企业成功接入。点击查看详情:《华为云一站式API解决方案平台API Explorer上线》华为云API Explorer平台在未来几个月会实现更多功能,比如支持SDK示例代码、CLI等特性,同时也会开放更多的云服务API接口,连接更多开发者实现创新、拓宽创新边界。【拓展阅读】【API进阶之路】因为不会创建云服务器,我被实习生摆了一道【API进阶之路】前浪的绝地反击与自我证明【API进阶之路】甩锅大会上,我是如何绝地求生的【API进阶之路】一个技术预案,让老板当场喊出了“奥利给”【API进阶之路】万万没想到,一个技术方案帮实习生追到了运营妹子!【API进阶之路】一个技术盲点,差点让整个项目翻车【API进阶之路】老板给我涨薪30%!如何通过SDK接口搞定千万级流量直播【API进阶之路】半天搞定百万条手机号归属地查询,竟影响了公司战略方向!【API进阶之路】无法想象!大龄码农的硬盘里有这么多宝藏【API进阶之路】高考要考口语?一场10w+刷屏活动是如何用多模态评测API做出来的【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研【API进阶之路】逆袭!用关键词抽取API搞定用户需求洞察【华为云API学习赛】为入门初学者量身定制的学习平台,以赛带学,学以致用。参赛、邀请都有丰富奖品,还有机会拿P40 5G手机~API入门学习赛·AI人脸识别l 报名地址l 奖项设置API入门学习赛·探险寻宝之旅l 报名地址l 奖项设置
-
上回说到,公司的新业务增长速度放缓,运营部门提出要发展短视频来促进更快的业务增长,而我也因为提前准备好了技术预案再一次得到老板的赞赏(了解详情请看上集:一个技术预案,让老板当场喊出了奥利给 )。 既然万事俱备了,公司就着手开始做短视频业务。本着最小化成本验证、快速迭代的原则,公司并没有大规模地去推进,而是先开发一个简单的短视频网站,招聘了一个妹子来做运营,先跑着看看效果再决定要不要加大投入. 说到这个运营妹子,那可真是青(fu)春(bai)朝(mao)气(mei)有(da)活(chang)力(tui),听说她自己在短视频平台的账号就有几十万粉丝,还是什么穿搭博主。我们组那个985名校实习生明显感觉来公司上班的劲头都足多了。 你还别说,新来的运营妹子三天两头跑过来找我们实习生小哥,今天拜托给连个外接显示器,明天请帮忙查个网站新用户数,经常就听见:“小哥哥,你看这个要怎么实现呀~”小哥哥那也是有求必应,毕竟萌妹子嘛,总是不好拒绝,不像我们产品大哥要提个需求,那简直是山崩地裂。 前两天运营妹子突然跑过来问:“小哥哥,我这个网站可以放到一个单独的IP地址上么?”原来她遇到一个问题:新网站受原来网站的影响,不好做优化,负责网站优化的同事告诉她需要换一个单独的新IP地址。这个需求可把小哥哥给难住了,向来有求必应的他不知道怎么办才好,只能说:“每个服务器只有一个IP地址,如果要换IP地址,可能需要部署到新的服务器上,这个需要和老板协商…”运营妹子一听实现不了,明显就有些不开心了地走了,留下小哥哥在原地不知所措。 唉,还是太年轻呀,让老夫来帮你一把吧。我把实习生喊过来说:“想要有单独的IP地址不需要申请新的服务器,在现在的华为云弹性云服务器上挂载一个新的网卡就行了,只需要3步就可以实现。而且双网卡配置还能提升服务器带宽,提升短视频的访问速度。” 真的么?实习生小哥两眼冒光,特别期待地问我:“那怎么实现呀,我快点弄好,给她一个惊喜!说不定今天晚上就能一起去看电影了呢。” 具体操作嘛,很简单,很快我就给他写了一个操作文档:《3步实现弹性云服务器挂载网卡》《3步实现弹性云服务器挂载网卡》步骤1:创建网卡,发送POST请求,记录subnet 、network、port等ID。1、创建网络1)发送一条POST请求。POST:https://{endpoint}/v2.0/networks,其中endpoint是云服务器所在的区域节点。Body:{ "network": { "shared": false, "name": "demo-net", "admin_state_up": true, "tenant_id": "74610f3a5ad941998e91f076297ecf27" } }2)记录返回响应中“network”的ID。{ "network": { "id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "name": "demo-net", "status": "ACTIVE", "shared": false, "subnets": [], "availability_zone_hints": [], "availability_zones": [ "az_test_01", "az_test_02" ], "admin_state_up": true, "tenant_id": "74610f3a5ad941998e91f076297ecf27", "provider:network_type": "vxlan", "router:external": false } }2、创建子网1)发送请求。POST:https://{endpoint}/v2.0/subnetsBody:{ "subnet": { "name": "testsubnet", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1", "cidr": "10.0.10.0/24" } } 2) 记录响应中“subnet”的ID。{ "subnet": { "name": "testsubnet", "cidr": "10.0.10.0/24", "id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1" } }3、创建端口1)发送请求。POST:https://{endpoint}/v2.0/portsBody:{ "port": { "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5" } ], "name": "test", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27" } } 2) 记录响应中“port”的ID{ "port": { "id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "name": "test", "status": "DOWN", "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "mac_address": "fa:16:3e:db:91:f6", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "device_id": "", "device_owner": "", "security_groups": [ "93031677-2895-4b83-855a-637e309aa9e6" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {} } } 步骤2:挂载网卡 1)发送请求。URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/os-interface示例POST:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interfaceBody:{ "interfaceAttachment": { "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4" } } 2)响应示例{ "interfaceAttachment": { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } } 步骤3:确认挂载结果。1) 发送请求。URI格式:GET /v2.1/{tenant_id}/servers/{server_id}/os-interface示例GET:https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface2)响应示例{ "interfaceAttachments": [ { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "46712fe4-25bd-4eae-874b-a528abfb76be", "ip_address": "192.168.0.50" } ], "port_id": "dd706739-b696-40be-a9f4-477ce478cb18", "net_id": "17251a8f-a671-4d7c-85d9-af5415962994", "mac_addr": "fa:16:3e:a5:e0:3c" }, { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } ] }看到"port_state": "ACTIVE",就表示我们已经挂载好网卡了。 据说,由于疫情的原因,当天两人电影是没看成,但是正式处对象了……万万没想到,一个技术方案还让我当了一次月老。从此以后,实习生小哥看到我那叫一个毕恭毕敬~ 据了解,目前API Explorer平台已开放EI企业智能、计算、应用服务、网络、软件开发平台、视频等70+云服务,共上线2000+个API、6000+个错误码。在前期试运行期间,华为云API Explorer平台上的API接口也已被多家企业成功接入。点击查看详情:《华为云一站式API解决方案平台API Explorer上线》华为云API Explorer平台在未来几个月会实现更多功能,比如支持SDK示例代码、CLI等特性,同时也会开放更多的云服务API接口,连接更多开发者实现创新、拓宽创新边界。目前API Explorer在会员中心有登陆调测送码豆的活动,欢迎大家免费试用哦!【拓展阅读】【API进阶之路】因为不会创建云服务器,我被实习生摆了一道【API进阶之路】前浪的绝地反击与自我证明【API进阶之路】甩锅大会上,我是如何绝地求生的【API进阶之路】一个技术预案,让老板当场喊出了“奥利给”【API进阶之路】万万没想到,一个技术方案帮实习生追到了运营妹子!【API进阶之路】一个技术盲点,差点让整个项目翻车【API进阶之路】老板给我涨薪30%!如何通过SDK接口搞定千万级流量直播【API进阶之路】半天搞定百万条手机号归属地查询,竟影响了公司战略方向!【API进阶之路】无法想象!大龄码农的硬盘里有这么多宝藏【API进阶之路】高考要考口语?一场10w+刷屏活动是如何用多模态评测API做出来的【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研【API进阶之路】逆袭!用关键词抽取API搞定用户需求洞察【华为云API学习赛】为入门初学者量身定制的学习平台,以赛带学,学以致用。参赛、邀请都有丰富奖品,还有机会拿P40 5G手机~API入门学习赛·AI人脸识别l 报名地址l 奖项设置API入门学习赛·探险寻宝之旅l 报名地址l 奖项设置
-
差点被祭天!狂欢618,且看研发人如何绝地求生 每年618,在电商团队里,那都是运营的狂欢,研发的磨难,1秒钟的延迟都可能造成千万级成交额的损失...... 今年的618,我的任务是负责一个预热阶段H5活动的开发,我把这个活动部署在了华为云弹性云服务器上,主要是为了在高并发的时候可以随时调整服务器规格。 前两天这个活动已经正式上线并对外推广了,而且活动效果也是超预期的好,运营部门在例会上得到了老板的赞赏。万万没想到,在一片欢乐祥和的氛围中,运营老大提出了一个问题:“现在我们网站的加载越来越慢了,有时候一篇文章要好几秒才能加载出来,造成不少用户流失。” 什么意思?甩锅?老板的目光看向了我老大,我老大又看向了我,还没等我开口,嘚嘚瑟瑟的小实习生先说话了:“我们老师讲过,新网站出现这种情况是因为服务器没有配置好!不过我们也是第一次用云服务器,出问题也正常,下去我们就改。” 啥?云服务器可是我配置的,这锅甩到了我的头上?那可不行,这么多年的代码(bug)是白写的么,岁数大了腰不好,这锅我可背不动。 咳咳,清了清嗓子,我开始发言了: “网站加载速度变慢主要还是由于我们用户量的快速上涨导致的,我们用的是华为云弹性云服务器,配置也非常容易,不会出现配置问题。 早上我看了一下数据,现在日访问用户接近10万(研发多看看运营的数据还是有好处的),请求量远远超出预估,运营部门还是非常给力的。我们在初期没有预计到用户增长会这么快,为了节省成本,没有采购那么高配置的服务器。 但是我们用的是华为云弹性云服务器,升级非常快,4行代码就可以搞定,我这边的方案是根据现在的业务需求以及接下来预估的用户增长速度,变更弹性云服务器规格。另外为了节省服务器成本,除了升级服务器之外,还会使用服务器的Gzip页面压缩功能,针对JS文件、CSS文件、HTML文件进行压缩,优化网站访问速度。 另外呢,加载速度慢还有一个原因是一个页面加载各种Scripts、CSS样式表、Flash以及图片时,都会请求一次http,请求次数越多,时间耗费得也越多,接下来我们把CSS和JS写到页面上,减少http的请求次数,减少外部各类文件的数量调用次数从而提升访问速度…” 发言结束,运营老大明显是没听懂,看到老板和老大向我投来赞许的目光,我就知道,这个月的优秀员工又稳了~再看小实习生,正一脸沉默地咬着笔,怕是得消化一阵子了...... 散会后,我立马开始整改,先做服务器变更,顺手也整理了一份操作文档《4行代码变更弹性云服务器规格》,分享到部门群里: 第一步:变更云服务器规格。1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例(写入具体弹性云服务器规格){ "resize": { "flavorRef": "s3.large.2" } }第二步:确认云服务器规格变更。前提条件:弹性云服务器状态(即云服务器的 “OS-EXT-STS:vm_state”属性)必须是 “resized”。1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例{ "confirmResize": null }第三步:(可选)回退云服务器规格变更。回退须知:弹性云服务器状态(即云服务器的“OS-EXT-STS:vm_state”属性)必须是“resized”。回退后,在变更规格过程中的数据修改将会丢失。1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例{ "revertResize": null }变更弹性云服务器的时候,还有几点注意事项:l 关机状态的弹性云服务器才能执行变更云服务器规格操作。l 变更规格时,弹性云服务器的磁盘容量不能变小。l 变更弹性云服务器规格时,用户不能选择已售罄的CPU和内存资源。l 弹性云服务器规格(CPU或内存)变小,会影响弹性云服务器的性能。 据了解,目前API Explorer平台(https://apiexplorer.developer.huaweicloud.com/apiexplorer/overview)已开放EI企业智能、计算、应用服务、网络、软件开发平台、视频等70+云服务,共上线2000+个API、6000+个错误码。在前期试运行期间,华为云API Explorer平台上的API接口也已被多家企业成功接入。点击查看详情:《华为云一站式API解决方案平台API Explorer上线》华为云API Explorer平台在未来几个月会实现更多功能,比如支持SDK示例代码、CLI等特性,同时也会开放更多的云服务API接口,连接更多开发者实现创新、拓宽创新边界。
Astro zero小萌新
发表于2020-06-10 09:38:39
2020-06-10 09:38:39
最后回复
Astro zero小萌新
2020-06-10 09:38:39
3051 0 -
感谢参与本期活动!本期《开发者最佳实践挑战营》活动已于7月8日24:00结束,可添加小助手微信等待下期开启添加小助手微信:zhongjianjianxiaoge欢迎参加华为云“开发者最佳实践挑战营”!这是本次挑战营的第5关,坚持闯关成功有机会获7000+码豆/体脂秤/手环/摄像机等精美好礼!本期活动截止7月8日。注意:参与闯关前,请确保已报名加入活动群并领取实践资源,如未入群请添加小助手微信(zhongjianjianxiaoge),回复“最佳实践”报名入群!点击这里了解活动详情>> | 点击这里查看活动FAQ>> 电商抢购已成为当前互联网应用的普遍需求,有并发用户高、突发请求大、失败用户反复重试等特征,如何保证在高负载运行情况下网站的可用性已经成为运维保障的重点。优势· 真实场景模拟:秒级百万并发能力,瞬间发起大量并发压力,可在一个测试模型里面模拟全网站高负载。· 专业测试报告:提供按时延响应区间的统计,客观反映用户体验。· 失败用户重试:多种表达式的自定义结果比对,未正常进入网站的可以重试。图1 电商抢购测试 (1)实践资源说明:CPTS云性能测试服务,提供1万VUM免费测试额度和共享资源组,100以下并发长期免费使用,可点击这里进入CPTS控制台,点击“免费领取套餐包”领取1万VUM免费测试额度。(2)最佳实践指南: 点击查看实践指南>>(3)视频演示:点击查看视频演示>> 任务一:领取免费套餐包,并将CPTS控制台-总览-我的资源-已购套餐包VUM剩余额度进行截图,截图需包含右上角华为云账号名,并按回帖格式要求在本帖中回帖;任务二:根据实践指南完成实践操作,将测试报告截图,并按回帖格式要求在本帖中回帖;1)通关、参与奖励&规则参与奖励、通关奖励限前150名完成的开发者(码豆奖励有限先到先得)① 参与奖励:每关完成创建实例可获100码豆,共6关最高可获得600码豆② 通关奖励:通过2关赠送:1000码豆通过4关赠送:2000码豆通过6关赠送:4000码豆活动结束后5个工作日内公示通关名单,15个工作日内发放码豆奖励。注:取通关最高值发放码豆奖励 2)分享任务规则&奖励:分享海报,每次分享可获得500码豆,最多可分享5次,可获2500码豆激励第一步: 分享以下文案+海报至朋友圈或100人以上技术群(微信、QQ、钉钉不限)。每次分享可获得500码豆,最高2500码豆!码豆可用于兑换DevCloud会员中心精美实物礼品。(1)文案:我正在参与华为云开发者最佳实践挑战营,场景化实战get云上开发技能,闯关还能赢好礼!(2)海报:添加小助手微信(zhongjianjianxiaoge),回复“分享海报”获取海报和文案。第二步: 分享完成后,截图点击链接https://www.wjx.top/jq/79372993.aspx 上传分享截图;符合要求的截图即可算作分享成功1次,获得500码豆,最高可获2500码豆!码豆奖励会在活动结束后15个工作日内发放3)幸运奖抽奖规则&奖励:(1)全通关可参与抽取:荣耀小哨兵智能摄像机 广角版、华为手环跑步精灵3e手环、荣耀智能体脂秤2;(2)活动结束后5个工作日内公示通关名单,并在微信群中统一抽奖。中奖名单公布后,用户需单独提供收件信息,奖品将于15个工作日内发放。为避免无法发放码豆,从未登录过会员中心的用户需提前登陆下DevCloud会员中心本次活动发放的码豆有效期至2020年9月1日 请务必按照以下格式要求进行回帖,否则无法计算奖励:华为云账号名:XXX(即右上角的字母数字组合ID)微信昵称:XXX实践感想:XXX实践截图:需包含(a)CPTS控制台总览页VUM剩余额度截图;(b)完整测试报告截图,可分多张截图;(c)下载离线报告,并在回帖时将报告上传附件。附各关卡快速入口:第1关任务:基于API网关的电话号码归属地查询第2关任务:使用函数工作流服务为图片打水印第3关任务:使用Redis实现排行榜功能第4关任务:使用DMS Kafka优化消费者poll第5关任务:使用CPTS进行电商网站性能测试第6关任务:基于ServiceStage的天气预报应用部署
-
我就是你们所说的前浪,在公司撸码多年,前两周因为云服务器被新来的985实习生摆了一道(了解前情请戳:因为不会创建云服务器,我被实习生摆了一道),当然,我也凭借着一名优秀程序员的经验和自学习能力,快速给予了反击。(了解前情请戳:前浪的绝地反击与自我证明)。 部署在华为云弹性云服务器上的新项目市场反响不错,运营部门在月末总结会上得到了老板的赞赏。万万没想到,在一片欢乐祥和的氛围中,运营老大提出了一个问题:“现在我们网站的加载越来越慢了,有时候一篇文章要好几秒才能加载出来,造成不少用户流失。” 什么意思?甩锅?老板的目光看向了我老大,我老大又看向了我,还没等我开口,嘚嘚瑟瑟的小实习生先说话了:“我们老师讲过,新网站出现这种情况是因为服务器没有配置好!不过我们也是第一次用云服务器,出问题也正常,下去我们就改。” 啥?云服务器可是我配置的,这锅甩到了我的头上?那可不行,这么多年的代码(bug)是白写的么,岁数大了腰不好,这锅我可背不动。咳咳,清了清嗓子,我开始发言了: “网站加载速度变慢主要还是由于我们用户量的快速上涨导致的,我们用的是华为云弹性云服务器,配置也非常容易,不会出现配置问题。早上我看了一下数据,现在日访问用户接近10万(研发多看看运营的数据还是有好处的),请求量远远超出预估,运营部门还是非常给力的。我们在初期没有预计到用户增长会这么快,为了节省成本,没有采购那么高配置的服务器。但是我们用的是华为云弹性云服务器,升级非常快,4行代码就可以搞定,我这边的方案是根据现在的业务需求以及接下来预估的用户增长速度,变更弹性云服务器规格。另外为了节省服务器成本,除了升级服务器之外,还会使用服务器的Gzip页面压缩功能,针对JS文件、CSS文件、HTML文件进行压缩,优化网站访问速度。 另外呢,加载速度慢还有一个原因是一个页面加载各种Scripts、CSS样式表、Flash以及图片时,都会请求一次http,请求次数越多,时间耗费得也越多,接下来我们把CSS和JS写到页面上,减少http的请求次数,减少外部各类文件的数量调用次数从而提升访问速度…” 发言结束,运营老大明显是没听懂,看到老板和老大向我投来赞许的目光,我就知道,这个月的优秀员工又稳了~再看小实习生,正一脸沉默地咬着笔,怕是得消化一阵子了...... 散会后,我立马开始整改,先做服务器变更,顺手也整理了一份操作文档《4行代码变更弹性云服务器规格》,分享到部门群里:点击了解内容详情 第一步:变更云服务器规格1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例(写入具体弹性云服务器规格){ "resize": { "flavorRef": "s3.large .2" }} 第二步:确认云服务器规格变更前提条件:弹性云服务器状态(即云服务器的 “OS-EXT-STS:vm_state”属性)必须是 “resized”。1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例{ "confirmResize": null} 第三步:(可选)回退云服务器规格变更回退须知:弹性云服务器状态(即云服务器的“OS-EXT-STS:vm_state”属性)必须是“resized”。回退后,在变更规格过程中的数据修改将会丢失。1、接口相关信息URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/action2、请求示例{ "revertResize": null} 变更弹性云服务器的时候,还有几点注意事项:关机状态的弹性云服务器才能执行变更云服务器规格操作。变更规格时,弹性云服务器的磁盘容量不能变小。变更弹性云服务器规格时,用户不能选择已售罄的CPU和内存资源。弹性云服务器规格(CPU或内存)变小,会影响弹性云服务器的性能。 据了解,目前API Explorer平台已开放EI企业智能、计算、应用服务、网络、软件开发平台、视频等70+云服务,共上线2000+个API、6000+个错误码。在前期试运行期间,华为云API Explorer平台上的API接口也已被多家企业成功接入。点击查看详情:《华为云一站式API解决方案平台API Explorer上线》华为云API Explorer平台在未来几个月会实现更多功能,比如支持SDK示例代码、CLI等特性,同时也会开放更多的云服务API接口,连接更多开发者实现创新、拓宽创新边界。【拓展阅读】【API进阶之路】因为不会创建云服务器,我被实习生摆了一道【API进阶之路】前浪的绝地反击与自我证明【API进阶之路】甩锅大会上,我是如何绝地求生的【API进阶之路】一个技术预案,让老板当场喊出了“奥利给”【API进阶之路】万万没想到,一个技术方案帮实习生追到了运营妹子!【API进阶之路】一个技术盲点,差点让整个项目翻车【API进阶之路】老板给我涨薪30%!如何通过SDK接口搞定千万级流量直播【API进阶之路】半天搞定百万条手机号归属地查询,竟影响了公司战略方向!【API进阶之路】无法想象!大龄码农的硬盘里有这么多宝藏【API进阶之路】高考要考口语?一场10w+刷屏活动是如何用多模态评测API做出来的【API进阶之路】帮公司省下20万调研费!如何巧用情感分析API实现用户偏好调研【API进阶之路】逆袭!用关键词抽取API搞定用户需求洞察【华为云API学习赛】为入门初学者量身定制的学习平台,以赛带学,学以致用。参赛、邀请都有丰富奖品,还有机会拿P40 5G手机~API入门学习赛·AI人脸识别l 报名地址l 奖项设置API入门学习赛·探险寻宝之旅l 报名地址l 奖项设置
-
华为云—华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器、云数据库、云安全等云计算服务,软件开发服务,面向企业的大数据和人工智能服务,以及场景化的解决方案。华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。华为云官方网站ModelArts是华为云产品中面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及半自动化标注、大规模分布式Training、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。华为云官方网站用Postman测试ModelArts部署的图像分类模型本实验将带你学会Postman的下载,安装,注册,启动,获取用户Token等基础操作,并教会你如何用Postman测试ModelArts部署的在线图像分类模型。用Postman测试ModelArts部署的图像分类模型实验流程1.关于Postman的各项前期准备工作2.利用Postman获取用户Token值3.启动已经部署的在线服务4.Postman测试部署的图像分类模型11.Postman的下载安装首先需要进入Postman官方网站:https://www.getpostman.com/apps根据你的电脑系统(Windows,macOS,Linux)选择下载的类型,整个文件约80M:什么是Postman?Postman是网页调试与辅助接口调用的工具,具有界面简洁清晰、操作方便快捷的特性,可以处理用户发送的HTTP请求,例如:GET,PUT、POST,DELETE等,支持用户修改HTTP请求中的参数并返回响应数据。安装Postman依赖.NET Framework 4.5组件,如果您的系统上没有该组件,可以通过下面的下载链接进行下载和安装:https://www.microsoft.com/en-us/download/details.aspx?id=42642将之前下载好了的Postman安装后,直接打开就是这个页面,加载比较慢,耐心等待:注册账号和密码,等待的时间也会略长,所以请耐心等待:登陆账号密码后,进入下面的页面:22.利用Postman获取用户Token值获取IAM区域与终端节点地址,得到属于自己的Request URL:结合表格,以自己ModelArts平台部署区域为华北-北京四举例:我的Request URL为:https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens如果是华北-北京一Request URL为:https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens打开Postman软件,点击图中“+”号:下图中所示,选择“POST”后:将刚才得到的Request URL粘贴至Postman中:粘贴后,点击“Body”,选择“raw”输入下面的模板代码:{ "auth": { "identity": { "methods": ["password"], "password": { "user": { "name": "华为云账号", "password": "华为云密码", "domain": { "name": "华为云账号" } } } }, "scope": { "project": { "name": "服务所在区域" } } } }其中华为云账号和华为云密码填写自己华为云的账号密码,服务所在区域结合下表填写,如华北-北京四,就填cn-north-4除了华为云账号,华为云密码,服务所在区域改为自己的信息,其它都不用修改。单击“Send”,发送API请求,得到下面的页面:点击页面中的“Headers”:就可以在出现的页面处,看到用户Token值:对应右侧的数值就是用户Token值:为方便复制粘贴用户Token值,可保留此页面。33.启动已经部署的在线服务在ModelArts平台启动已部署好的图像分类模型:如何部署图像分类模型,请看我往期系列推文:【玩转华为云】手把手教你利用ModelArts零代码开发声音识别模型【玩转华为云】手把手教你利用ModelArts零代码开发美食分类模型【玩转华为云】手把手教你利用ModelArts实现垃圾自动分类44.Postman测试部署的图像分类模型点击进入启动好了的图像分类在线服务,选择“调用指南”,在“调用指南”中复制API接口地址:将复制好了的API接口地址,粘贴到Postman中:Headers处新建:Key:X-Auth-TokenValue:第2步中记录的用户token值Body的from-data中新建:Key:images(注意:Key的类型一定要选择File!!!切记!!!)Value:选择被测试的本地图片操作好了后就是如下界面,可单击“Select Files”选择测试图片:我选择的图片是这张:选择好了图片后,点击“Send”,进行测试:结果如下,返回的结果是“猫”和图片显示的内容是完全一致的,测试成功!至此实验全部完成。大家使用的云端资源记得全部删除或停用,如对象存储服务创建的OBS桶,文件夹;ModelArts创建的数据集,部署的模型等都需要删除,并停用访问密钥,以免造成不必要的花费。[华为云ModelArts]带给我的记忆不止是人性化,智能化,普众化。更有很多吸引人的AI技术。正因我们国家有许多像华为这样强大的民族企业在国家背后默默做支撑,做奉献。我们国家才能屹立于世界民族之林。华为,中国骄傲!中华有为!作者:看那个码农,在读AI硕士,华为云校园大使,华为HCIP-AI认证专家欲关注更多AI干货内容和讨论更多AI话题可关注作者微信公众号:【看那个码农】
-
华为云—华为公司倾力打造的云战略品牌,2011年成立,致力于为全球客户提供领先的公有云服务,包含弹性云服务器、云数据库、云安全等云计算服务,软件开发服务,面向企业的大数据和人工智能服务,以及场景化的解决方案。华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。华为云官方网站ModelArts是华为云产品中面向开发者的一站式AI开发平台,为机器学习与深度学习提供海量数据预处理及半自动化标注、大规模分布式Training、自动化模型生成,及端-边-云模型按需部署能力,帮助用户快速创建和部署模型,管理全周期AI工作流。华为云官方网站用Postman测试ModelArts部署的图像分类模型本实验将带你学会Postman的下载,安装,注册,启动,获取用户Token等基础操作,并教会你如何用Postman测试ModelArts部署的在线图像分类模型。用Postman测试ModelArts部署的图像分类模型实验流程1.关于Postman的各项前期准备工作2.利用Postman获取用户Token值3.启动已经部署的在线服务4.Postman测试部署的图像分类模型11.Postman的下载安装首先需要进入Postman官方网站:https://www.getpostman.com/apps根据你的电脑系统(Windows,macOS,Linux)选择下载的类型,整个文件约80M:什么是Postman?Postman是网页调试与辅助接口调用的工具,具有界面简洁清晰、操作方便快捷的特性,可以处理用户发送的HTTP请求,例如:GET,PUT、POST,DELETE等,支持用户修改HTTP请求中的参数并返回响应数据。安装Postman依赖.NET Framework 4.5组件,如果您的系统上没有该组件,可以通过下面的下载链接进行下载和安装:https://www.microsoft.com/en-us/download/details.aspx?id=42642将之前下载好了的Postman安装后,直接打开就是这个页面,加载比较慢,耐心等待:注册账号和密码,等待的时间也会略长,所以请耐心等待:登陆账号密码后,进入下面的页面:22.利用Postman获取用户Token值获取IAM区域与终端节点地址,得到属于自己的Request URL:结合表格,以自己ModelArts平台部署区域为华北-北京四举例:我的Request URL为:https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens如果是华北-北京一Request URL为:https://iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens打开Postman软件,点击图中“+”号:下图中所示,选择“POST”后:将刚才得到的Request URL粘贴至Postman中:粘贴后,点击“Body”,选择“raw”输入下面的模板代码:{ "auth": { "identity": { "methods": ["password"], "password": { "user": { "name": "华为云账号", "password": "华为云密码", "domain": { "name": "华为云账号" } } } }, "scope": { "project": { "name": "服务所在区域" } } } }其中华为云账号和华为云密码填写自己华为云的账号密码,服务所在区域结合下表填写,如华北-北京四,就填cn-north-4除了华为云账号,华为云密码,服务所在区域改为自己的信息,其它都不用修改。单击“Send”,发送API请求,得到下面的页面:点击页面中的“Headers”:就可以在出现的页面处,看到用户Token值:对应右侧的数值就是用户Token值:为方便复制粘贴用户Token值,可保留此页面。33.启动已经部署的在线服务在ModelArts平台启动已部署好的图像分类模型:如何部署图像分类模型,请看我往期系列推文:【玩转华为云】手把手教你利用ModelArts零代码开发声音识别模型【玩转华为云】手把手教你利用ModelArts零代码开发美食分类模型【玩转华为云】手把手教你利用ModelArts实现垃圾自动分类44.Postman测试部署的图像分类模型点击进入启动好了的图像分类在线服务,选择“调用指南”,在“调用指南”中复制API接口地址:将复制好了的API接口地址,粘贴到Postman中:Headers处新建:Key:X-Auth-TokenValue:第2步中记录的用户token值Body的from-data中新建:Key:images(注意:Key的类型一定要选择File!!!切记!!!)Value:选择被测试的本地图片操作好了后就是如下界面,可单击“Select Files”选择测试图片:我选择的图片是这张:选择好了图片后,点击“Send”,进行测试:结果如下,返回的结果是“猫”和图片显示的内容是完全一致的,测试成功!至此实验全部完成。大家使用的云端资源记得全部删除或停用,如对象存储服务创建的OBS桶,文件夹;ModelArts创建的数据集,部署的模型等都需要删除,并停用访问密钥,以免造成不必要的花费。[华为云ModelArts]带给我的记忆不止是人性化,智能化,普众化。更有很多吸引人的AI技术。正因我们国家有许多像华为这样强大的民族企业在国家背后默默做支撑,做奉献。我们国家才能屹立于世界民族之林。华为,中国骄傲!中华有为!作者:看那个码农,在读AI硕士,华为云校园大使,华为HCIP-AI认证专家欲关注更多AI干货内容和讨论更多AI话题可关注作者微信公众号:【看那个码农】
-
什么是空壳主体备案主体已在工信部成功备案,但由于部分原因,主体下已备案的网站全部被注销,工信部只剩备案的主体信息,没有网站信息。如图1所示,在工信部查询某主体的备案信息,发现网站信息为空。示例:客户A之前在工信部备案过,因长时间没有接入商导致网站信息被注销,但主体信息的备案还存在,成为空壳主体。空壳主体的影响空壳主体不能直接新增网站备案,需要先注销再备案。注销空壳主体空壳主体是没有接入商的,因此需要向管局提交申请,线下注销空壳主体备案。登录工信部网址:beian.miit.gov.cn。点击下方通知公告——更多——对应省份注销申请表——按照表格中附页部分的要求填写注销内容——跟进管局要求的邮寄或发送邮件等方式递交管局处理。如下图:说明:注销表格邮寄/传真/邮件发送管局之后,一般会在3-20个工作日完成审核,注销成功后再提交新的域名备案。
-
版权声明:本文为CSDN博主「华为云」的原创文章原文链接:https://blog.csdn.net/devcloud/java/article/details/106285920引言近期,华为云DevCloud推出了开发者友好的深色模式,深受开发者们的喜爱和关注。大家都知道,深色模式(Dark Mode)在iOS13 引入该特性后各大应用和网站都开始支持了深色模式。在这之前,深色模式更常见于程序IDE开发界面和视频网站界面。前者通过降低屏幕亮度,使得使用人员长时间盯着屏幕眼睛没有那么疲惫;后者通过深色模式来降噪,从而突出主体内容部分。随着产品技术的迭代,在支持css自定义属性(又称css变量,css variables)的现代浏览器,完全可以在运行时实时新增主题,摆脱传统css主题文件加载模式下的主题需要预编译内置不能随时修改的弊端。接下来,我们看一下如何使用css自定义属性来完成深色模式和主题化的开发。主题切换器开发首先我们需要打通一套支持css自定义属性的开发模式。CSS自定义属性使用这里简单介绍一下CSS自定义属性,有时候也被称作CSS变量或者级联变量。它包含的值可以在整个文档中重复使用。自定义属性使用 --变量名: 变量值来定义,用var(--变量名[, 默认值]) 函数来获取值。举一个简单例子:<!--html--> <div> text </div> /* css */ div { --my-color: red; border: 1px solid var(--my-color); } p { color: var(--my-color); }这时候div的边框和内部的p元素就能使用这个定义的变量来设置自己的颜色。通常CSS自定义属性需要定义在元素内,通过在:root伪类上设置自定义属性,可以在整个文档需要的地方使用。CSS变量是可以继承的,也就是说我们可以通过CSS继承创建一些局部主题,这里就不展开局部主题的讨论,我们只需要使用好:root伪类就能对整站实施主题化了。如何切换主题呢,我们在运行的时候给头部插入一段<style>:root{--变量1: 色值1;--变量2: 色值2 ;……}</style>,并通过id或者引用的方式保持对该style元素的引用,通过修改style元素innerText为 :root{--变量1: 色值3; --变量2: 色值4;……}就可以成功替换变量颜色了。由于主题数据可能是从接口等其他地方获取的,我们可以在使用的地方给它先加上默认值,避免主题数据到达之前出现没有颜色的现象,比如 p { color: var(--变量1, 色值1);}这样,就使用上了css自定义属性来在运行时动态加载不同的主题颜色值。Sass/Less支持如果直接在开发css中使用css变量很容易由于书写问题,定义问题最后导致变量众多,管理困难,变更默认色值替换成本高等问题。在大型网站的开发中通常会用sass/less来预定义一些颜色变量来进行色彩管理。在使用sass和less的时候可以改变原来的传递色值方式改为传递css自定义属性和默认值。color定义文件:这里有个副作用就是,一旦色值被定义为var变量,则这个var表达式就无法再被less/sass的色彩计算函数所计算使用,这块我们在后面的章节再进行讨论。定义完对应的变量之后, 使用的地方就可以直接使用使用这些变量,方便统一管理。使用媒体查询prefer-color-scheme是浏览器获取系统上用户对颜色主题的倾向性的css api,使用该api我们就可以轻松使得网站的主题跟随系统的颜色设置展示不同的颜色了。css的API如下:// css @media (prefers-color-scheme: light) { :root{--变量1: 色值1;--变量2: 色值2; ……} } @media (prefers-color-scheme: dark) { :root{--变量1: 色值3; --变量2: 色值4; ……} }脚本方面也有对应的媒体查询方案,js的API如下:// js function isDarkSchemePreference(){ return window.matchMedia('screen and (prefers-color-scheme: dark)').matches; }主题切换服务最后我们需要写一个主题服务,主要目的就是支持在切换主题的时候应用不同的css变量数据,假定我们的css变量的数据存储在一个对象里,key值为css变量名,value值为css变量在该主题下的值,那么我们的主题切换服务的关键核心函数如下:// theme.ts export class Theme { id: ThemeId; name: string; data: { [cssVarName: string]: string }; } // theme-service.ts class ThemeService { contentElement; eventBus; // …… applyTheme(theme: Theme) { this.currentTheme = theme; if (!this.contentElement) { const styleElement = document.getElementById('devuiThemeVariables'); if ( styleElement) { this.contentElement = <HTMLStyleElement>styleElement; } else { this.contentElement = document.createElement('style'); this.contentElement.id = 'devuiThemeVariables'; document.head.appendChild(this.contentElement); } } this.contentElement.innerText = ':root { ' + this.formatCSSVariables(theme.data) + ' }'; document.body.setAttribute('ui-theme', this.currentTheme.id); // 通知外部主题变更 this.notify(theme, 'themeChanged'); } formatCSSVariables(themeData: Theme['data']) { return Object.keys(themeData).map( cssVar => ('--' + cssVar + ':' + themeData[cssVar]) ).join(';'); } private notify(theme: Theme, eventType: string) { if (!this.eventBus) { return; } this.eventBus.trigger(eventType, theme); }其中applyTheme函数会创建一个style元素,如果已经创建好了则直接改变style的内容。如果要支持跟随系统还需要一些额外函数的判断,这里就不展开了,可以参考链接,原理是通过动画结束事件监听媒体查询变化,对应可以使用enquirejs库。至此我们打通了主题服务和css变量值在开发中的应用,下面就可以开发一个深色模式了。深色模式开发语义化色彩变量深色模式涉及到了大量网站视觉的“反色”,在已有的网站当中,应该好好排查和梳理网站的颜色,把颜色归一和约束到一定的变量范围和数量里,并给颜色的不同使用场景一个不同的语义变量名,这样能取得场景分离的效果。从文本颜色上我们举个简单的例子:通常的网站里都会有正文(主要文本),帮助提示信息(次要文本),文本占位符。这里我们可以使用三个变量来描述这些文本text-color-primary,text-color-secondary,text-color-tertiary,也可以使用text-color-normal,text-color-help-info,text-color-placeholder来描述这这些颜色值。这里强烈建议使用更有语义的变量而不是色值本身的描述,比如:错误背景色,应该使用background-color-danger而不是background-color-red,因为对于不同的主题颜色值可能是不一样的。使用统一语义变量控制组件表现需要定义多少的变量才恰当,这个取决于网站的色彩空间约束范围和使用场景的定义粒度。当定义了一套变量之后我们就可以对组件/网站的不同组成部分进行变量统一。比如搜索框和下拉框,使用同样的变量控制相同部分的表现,使得组件在主题变化的可以使用相同的颜色规则。提供暗黑主题色值完成了上面重要的两步,我们就可以通过给变量提供一套新的色值来达到主题的变化了。图片的处理图片的处理并不能像文字一样地去反转颜色或者反转亮度,这样可能照成不适。通常如果有准备亮色和暗色两套图片,可以采用变量化图片地址在不同主题下切黑图片。如果图片来自用户输入,其他地方的截图,这时候需要稍微处理一些降低亮度。图片简化地获取当前的主题状态可以在body上增加一个ui主题是否是深色模式的属性。深色方案一:图片增加透明度。适用场景:简单文章图片和纯色背景。// css body[ui-theme-mode='dark'] img { opacity: 0.8; }深色方案二:带图片的位置叠加一个灰色半透明的层,适用场景:背景图,非纯色背景等。// css body[ui-theme-mode='dark'] .dark-mode-image-overlay { position: relative; } body[ui-theme-mode='dark'] .dark-mode-image-overlay::before { content: ''; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(50, 50, 50, 0.5); }前者不适用与带有背景图片的层处理,也不适合通过叠加图片遮挡来呈现效果的处理,但是用在文章博客中的插入图片非常简单有效,图片可以自然地叠加到纯色深色的背景色上。后者给了另一种方案完成背景层的叠加,但对代码有一定的入侵。提供主题变化订阅应对第三方组件场景通过以上几个基本的步骤就能在编码的过程中通过使用变量指定颜色值,获得主题的能力。但是面对大量第三方组件,有自己的主题,也可能有自己的深色主题,这块再去入侵式地修改成自定义的变量工作量不小且并不一定合适。这时候需要提供主题订阅,在主题发生变化的时候,获得通知,然后给第三方组件设置一定对应的变更。我们需要一个简单的eventbus,实现方式不限。这里给出一个简单版本的接口如下:// theme/interface.ts export interface IEventBus { on(eventName: string, callbacks: Function): void; off(eventName: string, callbacks: Function): void; trigger(eventName: string, data: any): void; }切换主题的时候发出themeChanged事件,使用on监听就能够获得当前主题变更事件,通过判断主题,给第三方的组件套上对应的主题,或者修改js颜色变量等等。降级支持和使用脚本腻子降级PostCSS插值脚本一旦使用了var之后,那些不支持var的老浏览器会显示为无颜色,这里我们使用postcss插件处理最后一个阶段的css。// postcss-plugin-add-var-value.js var postcss = require('postcss'); var cssVarReg = new RegExp('var\\\\(\\\\-\\\\-(?:.*?),(.*?)\\\\)', 'g'); module.exports = postcss.plugin('postcss-plugin-add-origin-css-var-value', () => { return (root) => { root.walkDecls(decl => { if (decl.type !== 'comment' && decl.value && decl.value.match(cssVarReg)) { decl.cloneBefore({value: decl.value.replace(cssVarReg, (match, item) => item) }); } }); } });该postcss插件通过遍历css规则里的带有var(--变量名, 变量值)在该行的上一行插入了一行替换为直接变量值的值,兼容不支持css var的浏览器。css-vars-ponyfill 使 IE9+ 和 Edge 12+支持上主题切换css-vars-ponyfill 这个npm包可以使得ie9+/edge12+支持上css自定义属性,它是一个带有选项的兼容方案,大概原理就是通过监听style里带有var自定义属性的值,替换为原值并插入。该兼容方案目前不兼容直接挂在在元素上的局部的css自定义属性定义。该方案还提供了实时监听style插入的选项,支持var链式的取值。简单地加入polyfill就可以使用了。一些问题的探讨什么网站需要开发深色模式?深色模式适合长时间阅读、长时间沉浸式浏览的网站,包括新闻、博客、知识库等文章浏览和视频网站,开发IDE界面等沉浸式交互。这些网站使用深色模式可以通过降低亮度减少对眼睛的刺激,减少长时间浏览的疲惫和晕眩的感觉。深色模式不适合一些非深色风格产品的展示,深沉的背景色会影响产品风格呈现、传递的情感和用户观看时候的心情,不适当的颜色搭配容易引起反感。像一些电商网站深色模式要慎重处理,深色可能会使得产品图片呈现的积极风格受到一定程度的抑制,颜色可能会影响用户的购物欲望。一些主题推广宣传类的网站也是,颜色可能会削弱主题的表达。有没有更简单的深色模式映射切换?比如使用HSL替代RGB色值。HSL色值的表达形式是通过色相、饱和度、亮度,既然深色模式是调整亮度和饱和度,那是否可以通过hsl色值来自动计算呢? 这种自动出暗色版本的色值还有待探索中,主要有两个原因:1)深色模式的舒适度不是线性亮度和饱和度映射能完成的,颜色的函数计算深色映射显得相对单调。2)实际情况是一个颜色可能会映射到多个暗黑场景的颜色。针对第一点,目前有一些UI会推出非线性反色的算法,也是为了解决颜色一起调整亮度之后变得看不清、色彩反色后冲击过大的问题。这类的算法还有很多优化空间。在浅色搭配情况下可能很好看的颜色,放到深色下可能就会引起不舒适:不恰当的对比度会引起视觉上看不清晰;不恰当的色彩碰撞会引起反感;不恰当的饱和度、亮度会显得UI有点脏。针对第二点,可以举以下的场景来说明:同样是白色,有色背景下的白色,在深色模式下可能还是保持白色;而作为背景色的白色在深色场景下会对应调整为深色。此时,自动通过色值计算就需要区分颜色的周边颜色或者底层叠加颜色来计算,这无疑加大了计算难度。所以这块自动计算并不太容易,还需要一些的探索。Sass/Less使用var变量后变成字符串管理,无法对颜色进行变换计算?本身sass/less的变量和css自定义属性就不是一套变量系统,sass/less的是一种编译型变量(编译时确定值,编译后不存在),而css是一个运行时变量(即运行时确定值)。用sass/less去管理css变量时为了管理css变量防止定义失误,但使用了Sass或Less之后替换成var之后会发现,sass和less是一些比如lighten、fadeout、rgba等等的函数都无法使用了,因为对与sass和less来说,var(--xxx, #xxx)是一个字符串不是颜色值。这块目前也没有比较好的方法, 有一些文章也讨论了一些解法,如 链接,大体的思路是拆分颜色的表达为hsl形式,然后对颜色的维度进行操作处理,实际上还是不能无感知地使用内建的色彩变换函数。另一个解法/方案是:把涉及颜色变换的地方统一处理然后再赋予新的css变量名,不再在mixin等函数里对颜色进行变换而是对变量名进行规则变化。如果读者有其他较好的思路也可以在评论里分享。 本文介绍了利用CSS自定义属性能够给css定义一些颜色变量,轻松地实现深色模式主题的网站开发及更多的主题化。通过色彩变量定义,使用变量,处理图片和处理三方组件支持实现整站的深色模式的规约和完善。进一步介绍了降级支持的方法,并对深色模式的适用范围和一些其他方式实现进行了讨论。也欢迎各位读者百度搜索“华为云DevCloud”体验、使用。
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签