如何指定钉钉jsapi的调用 5C

比如,我自己写了一个按钮(代表上传图片),点击按钮,他就调用钉钉的jsapi(biz.util.uploadImage),这该怎么实现?

1个回答

举个栗子:
你的按钮有一个onclick事件哈,只想一个叫做upload的方法
function upload(){
dd.ready{function(){
dd.biz.util.uploadImage({
compression:true,//(是否压缩,默认为true)
multiple: false, //是否多选,默认false
max: 3, //最多可选个数
quality: 50, // 图片压缩质量,
resize: 50, // 图片缩放率
stickers: { // 水印信息
time: "08:35",
dateWeather: "2016.05.06 周六·晴转多云 16℃",
username: "王晓",
address: "西湖·杭州"
},
onSuccess : function(result) {
//onSuccess将在图片上传成功之后调用
/*
[
'http://gtms03.alicdn.com/tps/i3/TB1VF6uGFXXXXalaXXXmh5R_VXX-237-236.png'
]
*/
},
onFail : function(err) {}
})

}}

}
还有啊,这个biz.util.uploadImage是需要dd.config的,别忘记。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
微信jsapi怎么调用,我总是支付签名验证失败
js部分代码: WeixinJSBridge.invoke( 'getBrandWCPayRequest', { appId: message.appid, //公众号名称,由商户传入 nonceStr:message.noncestr, //随机串 package:message.package, paySign:message.sign, //微信签名 signType:message.signType, //微信签名方式: timeStamp:message.timestamp, //时间戳,自1970年以来的秒数 }, function(res){ alert(JSON.stringify(res)); if(res.err_msg == "get_brand_wcpay_request:ok" ) { } // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。 } ); 请求代码: String timeStamp = Long.toString((long) ((new Date().getTime())*0.001)); String nonceStr = WXPayUtil.generateUUID(); //構造參數,生成sign值 Map<String,String> params = new TreeMap<String, String>(); params.put("appid", config.getAppID()); params.put("timestamp", timeStamp); params.put("noncestr", nonceStr); params.put("package", "prepay_id="+resultMap.get("prepay_id")); params.put("sign", WXPayUtil.generateSignature(params, config.getKey(), WXPayConstants.SignType.MD5)); params.put("signType", WXPayConstants.MD5); 我使用微信官网验证过支付签名,签名是对的。
java微信支付jsapi的java微信支付jsapi的
求能用的案例 java微信支付jsapi的java微信支付jsapi的
java中如何获取微信的jsapi_ticket
微信的官方文档给的java代码,没有获取jsapi_ticket,代码如下: import java.util.UUID; import java.util.Map; import java.util.HashMap; import java.util.Formatter; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.io.UnsupportedEncodingException; class Sign { public static void main(String[] args) { String jsapi_ticket = "jsapi_ticket"; // 注意 URL 一定要动态获取,不能 hardcode String url = "http://example.com"; Map<String, String> ret = sign(jsapi_ticket, url); for (Map.Entry entry : ret.entrySet()) { System.out.println(entry.getKey() + ", " + entry.getValue()); } }; public static Map<String, String> sign(String jsapi_ticket, String url) { Map<String, String> ret = new HashMap<String, String>(); String nonce_str = create_nonce_str(); String timestamp = create_timestamp(); String string1; String signature = ""; //注意这里参数名必须全部小写,且必须有序 string1 = "jsapi_ticket=" + jsapi_ticket + "&noncestr=" + nonce_str + "&timestamp=" + timestamp + "&url=" + url; System.out.println(string1); try { MessageDigest crypt = MessageDigest.getInstance("SHA-1"); crypt.reset(); crypt.update(string1.getBytes("UTF-8")); signature = byteToHex(crypt.digest()); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } ret.put("url", url); ret.put("jsapi_ticket", jsapi_ticket); ret.put("nonceStr", nonce_str); ret.put("timestamp", timestamp); ret.put("signature", signature); return ret; } private static String byteToHex(final byte[] hash) { Formatter formatter = new Formatter(); for (byte b : hash) { formatter.format("%02x", b); } String result = formatter.toString(); formatter.close(); return result; } private static String create_nonce_str() { return UUID.randomUUID().toString(); } private static String create_timestamp() { return Long.toString(System.currentTimeMillis() / 1000); } }
微信支付提示:调用支付JSAPI缺少参数:total_fee
问题:在iOS版的微信上,调用微信支付,提示:**调用支付JSAPI缺少参数:total_fee**; 但是在Android版的微信上,调用微信支付,支付弹框一闪而过,没有任何提示。 参数值分别是: timeStamp:"1549735394" nonceStr:"mAXvtjnJ9TjfqjDc" package:"prepay_id%3Dwx1001103397948805d12203820692168854" signType: "MD5" paySign:"C87D3CE95B1A73B2F05D7F3404F712BC" 前端代码使用的接口是: ``` // 10 微信支付接口 // 10.1 发起一个支付请求 var useWXPay = function (data) { wx.chooseWXPay({ timeStamp : String(data["timestamp"]), nonceStr : data["nonce_str"], package : escape(data["package"]), signType : data["sign_type"], paySign : data["paySign"], success: function (res) { alert("成功") alert(res) }, fail: function (res) { alert("失败") alert(Object.keys(res)) alert(res.errMsg) } }); } ``` 或者H5的支付请求代码: ``` var useWXPay1 = function (data) { if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); } else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } } else { var appId = $.trim($("#appId").val()) WeixinJSBridge.invoke( 'getBrandWCPayRequest', { "appId" : appId, //公众号名称,由商户传入 "timeStamp" : data["timestamp"], //时间戳,自1970年以来的秒数 "nonceStr" : data["nonce_str"], //随机串 "package" : data["package"], "signType" : data["sign_type"], //微信签名方式 "paySign" : data["paySign"] //微信签名 }, function(res) { // alert("err_code=" + res.err_code) // alert("err_desc=" + res.err_desc) // alert("err_msg=" + res.err_msg) // alert(Object.keys(res)) if(res.err_msg == "get_brand_wcpay_request:ok" ) { // 使用以上方式判断前端返回,微信团队郑重提示: //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 } } ); } } ``` 在统一下单时,已传入openid 请求大神的帮助
调用支付JSAPI缺少参数:total_fee, 跪求大神解答
Map<String,String> map = new HashMap<>(); String suijishu = WXPayUtil.generateNonceStr(); String dindanhao = GetRandom.getRandomStringByLength(32); System.out.println("订单号:"+dindanhao); map.put("appid",payhospital.getAppid());// appid map.put("mch_id",payhospital.getMchid());// 商户号 map.put("sign_type","MD5"); map.put("nonce_str",suijishu);// 随机字符串 map.put("body","ceshizhifu");// 商品名称 map.put("notify_url","http://wxzf.yiruan01.com/zuul/user/payhospitalbyid/result"); // 回调地址 map.put("out_trade_no",dindanhao);// 订单号 map.put("spbill_create_ip","47.95.245.237");// 终端ip(调用微信支付API的机器IP)//47.95.245.237 map.put("total_fee","1");// 订单金额 现在默认写死,money map.put("trade_type","JSAPI"); // 交易类型交易类型 map.put("openid",openid);// openid //生成签名 //将集合M内非空参数值的参数按照参数名ASCII码从小到大排序 String paixu = GroupWeuxin.formatUrlMap(map,false,false); // 拼接key String SignTemp = paixu+"&key="+payhospital.getKeyy(); // MD5加密 并且转换为大写 String sign = Md5Util.getMD5String(SignTemp).toUpperCase(); map.put("sign",sign); // 将map转换为xml String xml = WXPayUtil.mapToXml(map); // 判断签名是否正确 Boolean boo = WXPayUtil.isSignatureValid(xml,payhospital.getKeyy()); System.out.println("判断第一次签名是否正确:"+boo); String url = "https://api.mch.weixin.qq.com/pay/unifiedorder"; ResponseEntity<String> responseEntity = restTemplate.postForEntity(url,xml,String.class); String res1 = responseEntity.getBody(); // 获取返回参数到此后台完成 Map map1 = WXPayUtil.xmlToMap(res1); // 准备前台需要的参数APPID timestamp nonceStr package signType paySign Map<String,String> map2 = new HashMap<>(); // 获取之前返回的prepay_id String prepay_id = (String)map1.get("prepay_id"); map2.put("appId",payhospital.getAppid()); map2.put("nonceStr",suijishu); map2.put("package","prepay_id="+prepay_id); map2.put("signType","MD5"); map2.put("timeStamp",String.valueOf(WXPayUtil.getCurrentTimestamp())); //生成签名 //将集合M内非空参数值的参数按照参数名ASCII码从小到大排序 String paixu2 = GroupWeuxin.formatUrlMap(map2,false,false); // 拼接key String SignTemp2 = paixu2+"&key="+payhospital.getKeyy(); // MD5加密 并且转换为大写 String sign2 = Md5Util.getMD5String(SignTemp2).toUpperCase(); map2.put("paySign",sign2); // 判断签名是否正确 Boolean bool = WXPayUtil.isSignatureValid(map2,payhospital.getKeyy(),WXPayConstants.SignType.MD5); System.out.println("第二次:"+bool); 第一次成功返回prepay_id第二次签名出错,调用支付JSAPI缺少参数:total_fee 求解答!!!!!!!!!!!!!!
微信支付相关,调用JSAPI缺少参数total_fee,求大神解答
调用统一支付的接口返回的数据是这样子的 ![图片说明](https://img-ask.csdn.net/upload/201709/04/1504533896_261373.jpg) 前台调用getBrandWCPayRequest代码是这样子的 ``` function onBridgeReady(data){ var tt=JSON.parse(data); alert(tt.package); WeixinJSBridge.invoke( 'getBrandWCPayRequest', { "appId":tt.appId, //公众号名称,由商户传入 "timeStamp":tt.timeStamp,//时间戳,自1970年以来的秒数 "nonceStr":tt.nonceStr, //随机串 "package":"prepay_id="+tt.pg, "signType":"MD5",//微信签名方式: "paySign":tt.paySign //微信签名 }, function(res){ if(res.err_msg == "get_brand_wcpay_request:ok" ) {alert("成功了")} // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。 else{alert("没有成功")} } ); if (typeof WeixinJSBridge == "undefined"){ if( document.addEventListener ){ document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); }else if (document.attachEvent){ document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } }else{ onBridgeReady(); } } ``` pg里面放着prepay_id 不知道哪里出问题,一直显示缺少参数total_fee 跪求大神解答
微信jsapi支付(java)实现过程是什么,求大神帮忙
最近在研究java 实现微信jsapi支付这块知识,可是看了两天文档还是感觉没能理解具体过程是怎样的,对于jsapi_ticket、openId、access_token、签名等这些是什么,怎样通过接口去换的,怎样使用的还是未能理解,希望能有个大神帮帮我好吗,最好能给我发个具体实现过程的源码,非常感谢,我QQ:1214103372,或者大神们留下QQ我加你,帮帮我好吗
微信jsapi支付,ios端出现调用JSAPI缺少参数:APPID,安卓端没问题,有哪位大神知道的给说一下,谢谢
![图片说明](https://img-ask.csdn.net/upload/201906/17/1560765713_144548.png)![图片说明](https://img-ask.csdn.net/upload/201906/17/1560765721_789663.png)
关于微信jsapi支付的问题
微信客户端打开引导支付页面,发起支付时,请求特别慢,经过漫长的响应之后,会調起微信支付,但是还有的时候,经过漫长的请求之后呢,会报错:"统一支付接口中,缺少必填参数openid!trade_type为JSAPI时,openid为必填参数", 至此,就不太明白,为什么会请求这么长时间呢(四五十秒的时间)?于是抓包发现,在请求openid的时候,code被重复利用了导致的,openid为空,才会报这个错,再次寻求好的解决办法
微信JsAPI(java)支付,支付完成后notify_url无法调用
最近做微信支付,以前也没做过微信方面的东西,所以都不懂。。 只能求助各位大神了。。 微信文档中说明,在支付成功后会根据notify_url中设置的地址通知商户支付成功的信息, 但是现在不管是将地址设置为xxx.do还是设置为授权目录下的xxx.jsp都不行。 麻烦各位做过的帮忙解答下吧。 谢谢。
关于微信浏览器意外的H5页面微信支付问题。
在微信浏览器内部可以用jsapi接口调用微信支付,那么如果我在微信浏览器意外(比如360手机浏览器)的H5页面,想要调起微信支付(京东等大型商城有这种功能),那么我想问一下,这种功能需要另外找微信那边申请接口吗?是什么接口?还是只需要微信支付接口这一个就够了呢? 谢谢指教!
微信开发中 jssdk 中 jsapi的返回值如何在php中获取
![jsapi alert 出来的返回值 图片说明](https://img-ask.csdn.net/upload/201508/03/1438568586_134530.jpg) var getLocation = document.getElementById('getLocation'); getLocation.onclick = function(){ //使用getLocation接口获取地理位置坐标 wx.getLocation({ success:function(res){ var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90 var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。 var speed = res.speed; // 速度,以米/每秒计 var accuracy = res.accuracy; // 位置精度 alert(JSON.stringify(res)); }, cancel:function(res){ alert('用户拒绝授权获取地理位置'); }, }); }; ``` ```
微信jsapi网页支付成功显示body问题
第一次做微信jsapi支付,生成预支付订单的时候需要把body进行urf-8转码,但是支付 成功之后页面显示的商品描述body确实转码过后的内容,哪位大神帮帮怎么解决
java微信公众号开发获取jsapi_ticket问题
public JSONObject index1(Model model,HttpServletRequest request) { String code=request.getParameter("code"); net.sf.json.JSONObject jsonObject=WeChatUtils.getOpenId(code);//获取微信用户access_token String openid=jsonObject.getString("openid"); String access_token=jsonObject.getString("access_token"); HttpSession session=request.getSession(); session.setAttribute("access_token",access_token); session.setAttribute("openid",openid); System.out.println("index1-- access_token:"+access_token); // String refresh_token =jsonObject.getString("refresh_token"); net.sf.json.JSONObject ticket =WeChatUtils.getJsapi_ticket(access_token); String jsapi_ticket=jsonObject.getString("ticket");//通过access_token获取jsapi_ticket System.out.println("jsapi_ticket:"+jsapi_ticket); -------WechatUtil.java public static JSONObject getOpenId(String code) { String path=OAUTHUSERINFO.replace("APPID", appid).replace("SECRET", appsecret).replace("CODE", code); System.out.println("调用微信api url:"+path); JSONObject wxjsonObject=HttpRequest(path); return wxjsonObject; } private static JSONObject HttpRequest(String requestUrl) { JSONObject jsonObject=null; StringBuffer buffer=new StringBuffer(); InputStream inputStream=null; try { URL url=new URL(requestUrl); HttpsURLConnection httpsURLConnection=(HttpsURLConnection) url.openConnection(); httpsURLConnection.setDoOutput(true); httpsURLConnection.setDoInput(true); httpsURLConnection.setUseCaches(false); //设置请求方式 httpsURLConnection.setRequestMethod("GET"); httpsURLConnection.connect(); inputStream=httpsURLConnection.getInputStream(); InputStreamReader inputStreamReader=new InputStreamReader(inputStream,"utf-8"); BufferedReader bufferedReader=new BufferedReader(inputStreamReader); String str=null; while((str=bufferedReader.readLine())!=null) { buffer.append(str); } bufferedReader.close(); inputStreamReader.close(); //释放资源 inputStream.close(); inputStream=null; httpsURLConnection.disconnect(); jsonObject=JSONObject.fromObject(buffer.toString()); System.out.println(buffer.toString()); }catch(ConnectException ce) { ce.printStackTrace(); System.out.println("WeChat server connection timed out"); }catch(Exception e) { e.printStackTrace(); System.out.println("http request error:{}"); }finally { try { if(inputStream!=null) { inputStream.close(); } }catch(IOException e) { e.printStackTrace(); } } return jsonObject; } 初接触微信公众号开发, 前端传个code过来,根据code获取的access_token,获取jsapi_ticket时提示invalid credential, access_token is invalid or not latest hint access_token是可以获取到的,可是为什么jsapi_ticket获取失败?问题出在什么地方,做的的麻烦给看看
微信JSAPI支付成功,回调接口没进去?
微信支付已经成功了,但是传的那个notify_url支付回调地址没进入,我把回调接口写的很简单,就system输出一下,支付后服务器都没输出。我自己直接访问那个接口服务器就可以输出。地址是外网的,域名那个地址。而且没有传参数。
java微信公众平台支付jsApi开发,支付验证签名失败问题
java微信公众平台支付jsApi开发,支付验证签名失败,提交给微信生成订单的数据与微信测试工具生成的数据是一样的,后面去调支付的时候就出现支付验证签名失败问题,哪位大神指点一下哇!
调用高德地图webapi无法显示'点标记'图标,复制下官网的代码也不行,有时候甚至没有反应,刚学习不太懂怎么回事?
![点击添加无用,多试几次有时候会有无法显示图片的黑框](https://img-ask.csdn.net/upload/201912/24/1577155738_802652.png) 点击添加无用,多试几次有时候会有无法显示图片的黑框 ``` 官方代码如下 <!doctype html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="initial-scale=1.0, user-scalable=no, width=device-width"> <title>默认点标记</title> <link rel="stylesheet" href="https://a.amap.com/jsapi_demos/static/demo-center/css/demo-center.css"/> <style> html, body, #container { height: 100%; width: 100%; } .amap-icon img, .amap-marker-content img{ width: 25px; height: 34px; } .marker { position: absolute; top: -20px; right: -118px; color: #fff; padding: 4px 10px; box-shadow: 1px 1px 1px rgba(10, 10, 10, .2); white-space: nowrap; font-size: 12px; font-family: ""; background-color: #25A5F7; border-radius: 3px; } .input-card{ width: 18rem; z-index: 170; } .input-card .btn{ margin-right: .8rem; } .input-card .btn:last-child{ margin-right: 0; } </style> </head> <body> <div id="container"></div> <div class="input-card"> <label style="color:grey">点标记操作</label> <div class="input-item"> <input id="addMarker" type="button" class="btn" onclick="addMarker()" value="添加点标记"> <input id="updateMarker" type="button" class="btn" onclick="updateIcon()" value="更新点标记图标"> </div> <div class="input-item"> <input id="clearMarker" type="button" class="btn" onclick="clearMarker()" value="删除点标记"> <input id="updateMarker" type="button" class="btn" onclick="updateContent()" value="更新点标记内容"> </div> </div> <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=此处我用了自己的KEY"></script> <script type="text/javascript"> var marker, map = new AMap.Map("container", { resizeEnable: true, center: [116.397428, 39.90923], zoom: 13 }); // 实例化点标记 function addMarker() { marker = new AMap.Marker({ icon: "//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png", position: [116.406315,39.908775], offset: new AMap.Pixel(-13, -30) }); marker.setMap(map); } function updateIcon() { marker.setIcon('//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-red.png') } function updateContent() { if (!marker) { return; } // 自定义点标记内容 var markerContent = document.createElement("div"); // 点标记中的图标 var markerImg = document.createElement("img"); markerImg.className = "markerlnglat"; markerImg.src = "//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-red.png"; markerContent.appendChild(markerImg); // 点标记中的文本 var markerSpan = document.createElement("span"); markerSpan.className = 'marker'; markerSpan.innerHTML = "Hi,我被更新啦!"; markerContent.appendChild(markerSpan); marker.setContent(markerContent); //更新点标记内容 marker.setPosition([116.391467, 39.927761]); //更新点标记位置 } // 清除 marker function clearMarker() { if (marker) { marker.setMap(null); marker = null; } } </script> </body> </html> ```
微信公众号jsApi支付问题
**支付目录:**http://testmecom.hhit.com.cn/mecom/micromall/page/wxPrePay.jsp **测试授权目录:**http://testmecom.hhit.com.cn/mecom/micromall/page/ **统一下单支付请求:** <com.trendcom.mecom.micromall.wxpay.model.UnifiedOrderReqData> <appid>****</appid> <mch_id>****</mch_id> <nonce_str>8fu8Z1206x9Bz5270ioAxdD2L23u066T</nonce_str> <sign>54B7F7BA12812F958E97844650543EE2</sign> <body>亲,请仔细核对交易金额,以免失误!</body> <out_trade_no>db331NIA2644817U59o3679891F077O2</out_trade_no> <total_fee>1</total_fee> <spbill_create_ip>219.136.133.131</spbill_create_ip> <notify_url>http://testmecom.hhit.com.cn/mecom/wxpay!notifyUrl.action</notify_url> <trade_type>JSAPI</trade_type> <openid>oneDCuL44fxwh-BNB_aC3xIBvnjA</openid> <product_id>10311106</product_id> </com.trendcom.mecom.micromall.wxpay.model.UnifiedOrderReqData> **统一下单返回结果:** <xml> <return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[OK]]></return_msg> <appid><![CDATA[****]]></appid> <mch_id><![CDATA[****]]></mch_id> <nonce_str><![CDATA[SbGmWWImFwvlh13z]]></nonce_str> <sign><![CDATA[8C123495A6777C95C24D976762F51CFA]]></sign> <result_code><![CDATA[SUCCESS]]></result_code> <prepay_id><![CDATA[wx201507301403575355b478720900716820]]></prepay_id> <trade_type><![CDATA[JSAPI]]></trade_type> </xml> ** h5请求:** function onBridgeReady(appId, timestamp, nonceStr, packages, signType, paySign) { WeixinJSBridge.invoke( 'getBrandWCPayRequest', { "appId": appId, //公众号名称,由商户传入 "timeStamp": timestamp, //时间戳,自1970年以来的秒数 "nonceStr": nonceStr, //随机串 "package": packages, "signType": signType, //微信签名方式: "paySign": paySign //微信签名 }, function (res) { WeixinJSBridge.log(res.err_msg); alert(res.err_msg); ---->get_brand_wcpay_request:fail if (res.err_msg == "get_brand_wcpay_request:ok") { // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。 window.location.href = "${basePath}/mecom/MmOrderAction!findOrderListPageInfo.action?dataType=unsend" } } ); } 问题描述:公众号支付,在客户端使用H5网页端调起支付(jsApi),错误信息:get_brand_wcpay_request:fail,有知道怎么解决这个问题的大神吗?请指教
微信JSAPI分享带参数URL截断的问题
微信分享页面到朋友圈或者发送给朋友的时候,会把网址所带参数截断, 例如在微信里面打开:http://nrnc.net/52441/?a=12321 分享给朋友后,地址会变成: http://nrnc.net/52441/?from=singlemessage&isappinstalled=1 http://nrnc.net/52441/?from=singlemessage 这样的有什么解决方案??
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
阿里面试官问我:如何设计秒杀系统?我的回答让他比起大拇指
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图和个人联系方式,欢迎Star和指教 前言 Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n...
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
Android性能优化(4):UI渲染机制以及优化
文章目录1. 渲染机制分析1.1 渲染机制1.2 卡顿现象1.3 内存抖动2. 渲染优化方式2.1 过度绘制优化2.1.1 Show GPU overdraw2.1.2 Profile GPU Rendering2.2 卡顿优化2.2.1 SysTrace2.2.2 TraceView 在从Android 6.0源码的角度剖析View的绘制原理一文中,我们了解到View的绘制流程有三个步骤,即m...
微服务中的Kafka与Micronaut
今天,我们将通过Apache Kafka主题构建一些彼此异步通信的微服务。我们使用Micronaut框架,它为与Kafka集成提供专门的库。让我们简要介绍一下示例系统的体系结构。我们有四个微型服务:订单服务,行程服务,司机服务和乘客服务。这些应用程序的实现非常简单。它们都有内存存储,并连接到同一个Kafka实例。 我们系统的主要目标是为客户安排行程。订单服务应用程序还充当网关。它接收来自客户的请求...
致 Python 初学者们!
作者| 许向武 责编 | 屠敏 出品 | CSDN 博客 前言 在 Python 进阶的过程中,相信很多同学应该大致上学习了很多 Python 的基础知识,也正在努力成长。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 Python 这门编程语言,从2009年开始单一使用 Python 应对所有的开发工作,直至今...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
字节跳动面试官这样问消息队列:分布式事务、重复消费、顺序消费,我整理了一下
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
SpringBoot2.x系列教程(三十六)SpringBoot之Tomcat配置
Spring Boot默认内嵌的Tomcat为Servlet容器,关于Tomcat的所有属性都在ServerProperties配置类中。同时,也可以实现一些接口来自定义内嵌Servlet容器和内嵌Tomcat等的配置。 关于此配置,网络上有大量的资料,但都是基于SpringBoot1.5.x版本,并不适合当前最新版本。本文将带大家了解一下最新版本的使用。 ServerProperties的部分源...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ...... ...
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
爬取薅羊毛网站百度云资源
这是疫情期间无聊做的爬虫, 去获取暂时用不上的教程 import threading import time import pandas as pd import requests import re from threading import Thread, Lock # import urllib.request as request # req=urllib.request.Requ...
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名...
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计...
HTML5适合的情人节礼物有纪念日期功能
前言 利用HTML5,css,js实现爱心树 以及 纪念日期的功能 网页有播放音乐功能 以及打字倾诉感情的画面,非常适合情人节送给女朋友 具体的HTML代码 具体只要修改代码里面的男某某和女某某 文字段也可自行修改,还有代码下半部分的JS代码需要修改一下起始日期 注意月份为0~11月 也就是月份需要减一。 当然只有一部分HTML和JS代码不够运行的,文章最下面还附加了完整代码的下载地址 &lt;!...
相关热词 c#导入fbx c#中屏蔽键盘某个键 c#正态概率密度 c#和数据库登陆界面设计 c# 高斯消去法 c# codedom c#读取cad文件文本 c# 控制全局鼠标移动 c# temp 目录 bytes初始化 c#
立即提问