위 챗 테스트 번호 개발 의 7 사용자 지리 적 위치 획득
                                            
 4652 단어  위 챗 개발
                    
단계 1: 귀속 도 메 인 이름 http: / 를 추가 하지 않도록 주의 하 세 요.
  STEP 2: js 파일 도입
-- JS 인 터 페 이 스 를 호출 해 야 하 는 페이지 에 다음 JS 파일 을 도입 한다. (https 지원)http://res.wx.qq.com/open/js/jweixin-1.2.0.js
  단계 3: ajax 를 통 해 파 라 메 터 를 가 져 오고 config 인터페이스 주입 권한 검증 설정 을 완성 합 니 다.
-- ajax 요청
$(function() {
	
	//       url
	var url = location.href.split('#')[0];
	$.ajax({
		type : "GET",
		url : "signature.action?url=" + url,
		dataType:"json",
		success : function(data) {
			wx.config({
				debug : true, //       ,     api         alert  ,         ,   pc   ,       log  ,  pc      。
				appId: data.appid, //   ,        
      	                        timestamp: data.timestamp,  //   ,        
      	                        nonceStr: data.nonceStr,  //   ,        
      	                        signature: data.signature,   //   ,  ,   1
				jsApiList : [ 
				                'checkJsApi',
						'openLocation',//                 
						'getLocation' //         
				]  //   ,     JS    
			});
		}
	});
	
	});  -- 백 스테이지 코드
주: jsapi - ticket 의 획득 은 앞에서 말 했 듯 이 여기 서 가 져 왔 습 니 다.
@RequestMapping(value = "signature", method = RequestMethod.GET)
	@ResponseBody 
	public Map createSignature(@RequestParam String url) 
	{
	  System.out.println("RestFul of createSignature parameters url:"+url);
	  
	  return SignatureUtil.sign(tokenService.getJsapi_ticket(), url);
	}   public static Map sign(String jsapi_ticket, String url) {
	        Map ret = new HashMap();
	        String nonce_str = create_nonce_str();
	        String timestamp = create_timestamp();
	        String str;
	        String signature = "";
	 
	        //             ,     
	        str = "jsapi_ticket=" + jsapi_ticket +
	                  "&noncestr=" + nonce_str +
	                  "×tamp=" + timestamp +
	                  "&url=" + url;
	 
	        try
	        {
	            MessageDigest crypt = MessageDigest.getInstance("SHA-1");
	            crypt.reset();
	            crypt.update(str.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);
	        ret.put("appid", WeChatInfo.WX_APPID);
	 
	        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);
	    }
	     
	    //             access_token    
	    public static String getTime(){
	        Date dt=new Date();
	        SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	        return sdf.format(dt);
	    }     STEP 4: ready 인터페이스 처 리 를 통 해 성공 적 으로 검증
wx.ready(function() {
		//       
		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; //     
			},
			fail : function(res) {
				alert("      ");
			}
		});
	});  STEP 5: error 인터페이스 처리 실패 검증
	wx.error(function(res) {
		alert("      ");
	});   이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
위 챗 애플 릿 에 더 많은 로 딩 (즉, 목록 페이지)app. json 중: wxml 중: js 중: 배경 php 중: 메모: 아래 코드 php 5.4 이상 이 어야 지원 합 니 다....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.