Exemplo n.º 1
0
        public MiguanUserInfoDto GetUserInfo(string token)
        {
            string         result    = string.Empty;
            string         url       = _server.BaseApiUrl + $"/game/myCenter";
            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "GET";

            wbRequest.Accept = "application/json, text/plain, */*";
            wbRequest.Headers.Add("Origin", _server.BaseUrl + "");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.688806701.1811704586; _gid=GA1.8.177683714.1664296938; _gat=1");
            wbRequest.ContentType = "application/x-www-form-urlencoded";
            wbRequest.UserAgent   = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer     = _server.BaseUrl + $"/mine";

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <MiguanUserInfoDto> output = JsonHelper.JsonToObject <RequestResultDto <MiguanUserInfoDto> >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Result);
        }
Exemplo n.º 2
0
        public bool BuyMonkey(string token, MonkeyInfoDto monkey)
        {
            string         result    = string.Empty;
            string         url       = _server.BaseApiUrl + $"/game/buyCheck/{monkey.tid}";
            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "GET";

            wbRequest.Headers.Add("Origin", _server.BaseUrl + "");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.588206501.1511004286; _gid=GA1.2.195683714.1514296938; _gat=1");

            wbRequest.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer   = _server.BaseUrl + $"/monkey/{monkey.id}";

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <object> output = JsonHelper.JsonToObject <RequestResultDto <object> >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Success);
        }
Exemplo n.º 3
0
        public RequestMonkeyWithUserDetailDto GetMonkeyDetail(string token, long id)
        {
            string         result    = string.Empty;
            string         url       = $"http://api.h.miguan.in/game/detail/{id}";
            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "GET";

            wbRequest.Accept = "application/json, text/plain, */*";
            wbRequest.Headers.Add("Origin", "http://h.miguan.in");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.688806701.1811704586; _gid=GA1.8.177683714.1664296938; _gat=1");
            wbRequest.ContentType = "application/x-www-form-urlencoded";
            wbRequest.UserAgent   = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer     = $"http://h.miguan.in/monkey/{id}";

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <RequestMonkeyWithUserDetailDto> output = JsonHelper.JsonToObject <RequestResultDto <RequestMonkeyWithUserDetailDto> >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Result);
        }
Exemplo n.º 4
0
        public RequestResultDto PayNotify(string msgBody)
        {
            RequestResultDto requestResult = new RequestResultDto {
                Ret = 0, Msg = "Ok"
            };
            Dictionary <string, string> dict = new Dictionary <string, string>
            {
                { "return_code", "SUCCESS" },
                { "return_msg", "Ok" }
            };

            try
            {
                PayNotifyInfo pnInfo = XmlHelper.XmlToEntity <PayNotifyInfo>(msgBody);
                _log.Add(new Log()
                {
                    Msg = "return_code:" + pnInfo.return_code + ",return_msg:" + pnInfo.return_msg + ",pnInfo.out_trade_no:" + pnInfo.out_trade_no + ",pnInfo.total_fee:" + pnInfo.total_fee, Ret = 168, CreateTime = DateTime.Now
                });
                if (pnInfo != null && pnInfo.return_code == "SUCCESS" && pnInfo.result_code == "SUCCESS")
                {
                    #region 做自己的业务
                    if (pnInfo.appid == "")
                    {
                        string partnerKey = "";
                        if (!GetSignAndCheckSign(msgBody, partnerKey))
                        {
                            dict["return_code"] = "FAIL";
                            dict["return_msg"]  = "签名验证错误";
                            requestResult.Msg   = Utils.ArrayToXml(dict);
                            return(requestResult);
                        }
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
                _log.Add(new Log()
                {
                    Msg = "error:" + ex.ToString(), Ret = 168, CreateTime = DateTime.Now
                });
                dict["return_code"] = "FAIL";
                dict["return_msg"]  = "系统错误";
            }
            requestResult.Msg = Utils.ArrayToXml(dict);
            return(requestResult);
        }
Exemplo n.º 5
0
        public List <MonkeyInfoDto> GetMonkeysFromMarket(string token, int page, int gen = -1, int orderby = 1, int sort = 0)
        {
            string result = string.Empty;
            string url    = _server.BaseApiUrl + $"/game/homePage";

            string param = $"orderBy={orderby}&sort={sort}&status=1&current={page}&id=&gen={(gen==-1?"":gen+"")}";

            byte[] bs = Encoding.ASCII.GetBytes(param);

            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "Post";

            wbRequest.Headers.Add("Origin", _server.BaseUrl + "");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.588206501.1511004286; _gid=GA1.2.195683714.1514296938; _gat=1");
            wbRequest.ContentType = "application/x-www-form-urlencoded";
            wbRequest.UserAgent   = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer     = _server.BaseUrl + "/market";

            using (Stream reqStream = wbRequest.GetRequestStream())
            {
                reqStream.Write(bs, 0, bs.Length);
            }

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <RequestListMonkeysDto> output = JsonHelper.JsonToObject <RequestResultDto <RequestListMonkeysDto> >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Result.records);
        }
Exemplo n.º 6
0
        public BalanceFeedResult BalanceFeed(string token, long monkeyId, double coin)
        {
            string result = string.Empty;
            string url    = _server.BaseApiUrl + $"/game/balanceFeed";

            string param = $"coin={coin}&monkeyId={monkeyId}";

            byte[] bs = Encoding.ASCII.GetBytes(param);

            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "Post";

            wbRequest.Headers.Add("Origin", _server.BaseUrl + "");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.588206501.1511004286; _gid=GA1.2.195683714.1514296938; _gat=1");
            wbRequest.ContentType = "application/x-www-form-urlencoded";
            wbRequest.UserAgent   = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer     = _server.BaseUrl + $"/monkey/{monkeyId}";

            using (Stream reqStream = wbRequest.GetRequestStream())
            {
                reqStream.Write(bs, 0, bs.Length);
            }

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <BalanceFeedResult> output = JsonHelper.JsonToObject <RequestResultDto <BalanceFeedResult> >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Result);
        }
Exemplo n.º 7
0
        public RequestListMonkeys4AutoTradeDto <StudyRecord> GetStudyRecords(string token, int page = 1)
        {
            string result = string.Empty;
            string url    = $"http://api.h.miguan.in/game/studyRecordPage";

            string param = $"current={page}";

            byte[] bs = Encoding.ASCII.GetBytes(param);

            HttpWebRequest wbRequest = (HttpWebRequest)WebRequest.Create(url);

            wbRequest.Method = "Post";

            wbRequest.Headers.Add("Origin", "http://h.miguan.in");
            wbRequest.Headers.Add("accessToken", token);
            wbRequest.Headers.Add("Cookie", $"token={token}; _ga=GA1.2.588206501.1511004286; _gid=GA1.2.195683714.1514296938; _gat=1");
            wbRequest.ContentType = "application/x-www-form-urlencoded";
            wbRequest.UserAgent   = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36";
            wbRequest.Referer     = "http://h.miguan.in/gold";

            using (Stream reqStream = wbRequest.GetRequestStream())
            {
                reqStream.Write(bs, 0, bs.Length);
            }

            HttpWebResponse wbResponse = (HttpWebResponse)wbRequest.GetResponse();

            using (Stream responseStream = wbResponse.GetResponseStream())
            {
                using (StreamReader sReader = new StreamReader(responseStream))
                {
                    result = sReader.ReadToEnd();
                }
            }
            RequestResultDto <RequestListMonkeys4AutoTradeDto <StudyRecord> > output = JsonHelper.JsonToObject <RequestResultDto <RequestListMonkeys4AutoTradeDto <StudyRecord> > >(result);

            if (!output.Success)
            {
                throw new Exception(output.Msg);
            }
            return(output.Result);
        }
Exemplo n.º 8
0
 public async Task NewRequestReceivedAsync(RequestResultDto request) => await _hubContext.Clients.All.SendAsync("RequestReceived", request);
Exemplo n.º 9
0
        /// <summary>
        /// 发红包接口
        /// </summary>
        /// <param name="reOpenId">接收红包的用户</param>
        /// <param name="totalamount">付款金额(分)</param>
        /// <param name="wishing"></param>
        /// <param name="actName"></param>
        /// <param name="remark"></param>
        /// <param name="result"></param>
        /// <returns></returns>
        public SendRedPackReturn SendRedPack(string reOpenId, string totalamount, string wishing, string actName, string remark, string sendName, string mchId, string partnerKey, string wxappId, string cert, out RequestResultDto result)
        {
            SendRedPackReturn srpReturn = null;

            result = new RequestResultDto {
                Ret = 0, Msg = "ok"
            };
            try
            {
                string url = "https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack";

                string orderNo = mchId + DateTime.Now.ToString("yyyyMMdd") + Utils.CreateNoncestr(10); //商户订单号

                ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
                X509Certificate2 cer        = new X509Certificate2(cert, mchId, X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.MachineKeySet);
                HttpWebRequest   webrequest = (HttpWebRequest)HttpWebRequest.Create(url);
                webrequest.ClientCertificates.Add(cer);
                webrequest.Method = "post";

                var dict = new Dictionary <string, string>
                {
                    { "nonce_str", Utils.CreateNoncestr(16) },
                    { "mch_billno", orderNo },
                    { "mch_id", mchId },
                    { "wxappid", wxappId },
                    { "nick_name", sendName },
                    { "send_name", sendName },
                    { "re_openid", reOpenId },
                    { "total_amount", totalamount },
                    { "min_value", totalamount },
                    { "max_value", totalamount },
                    { "total_num", "1" },
                    { "wishing", wishing },
                    { "client_ip", Utils.GetIp() },
                    { "act_name", actName },
                    { "remark", remark },
                };
                dict.Add("sign", Signature(dict, partnerKey));
                var postDataStr = Utils.ArrayToXml(dict);
                _log.Add(new Log()
                {
                    Msg = postDataStr, Ret = 168, CreateTime = DateTime.Now
                });
                byte[] postData  = Encoding.UTF8.GetBytes(postDataStr);
                Stream reqStream = webrequest.GetRequestStream();
                reqStream.Write(postData, 0, postData.Length);
                reqStream.Close();

                HttpWebResponse webreponse = (HttpWebResponse)webrequest.GetResponse();
                Stream          stream     = webreponse.GetResponseStream();
                string          resp       = string.Empty;
                using (StreamReader reader = new StreamReader(stream))
                {
                    resp = reader.ReadToEnd();
                    _log.Add(new Log()
                    {
                        Msg = resp, Ret = 168, CreateTime = DateTime.Now
                    });
                }
                srpReturn = XmlHelper.XmlToEntity <SendRedPackReturn>(resp);
            }
            catch (Exception exp)
            {
                result = new RequestResultDto {
                    Ret = 10009, Msg = "出错," + exp.Message
                };
                _log.Add(new Log()
                {
                    Msg = exp.ToString(), Ret = 168, CreateTime = DateTime.Now
                });
            }
            return(srpReturn);
        }
Exemplo n.º 10
0
        /// <summary>
        /// 企业付款
        /// </summary>
        /// <param name="openId"></param>
        /// <param name="totalamount">钱(单位:分)</param>
        /// <param name="desc">描述</param>
        /// <param name="mchId">商户ID</param>
        /// <param name="partnerKey">商户key</param>
        /// <param name="wxappId">公众号appid</param>
        /// <param name="cert">证书地址</param>
        /// <param name="result"></param>
        /// <returns></returns>
        public EnterprisePayReturn EnterprisePay(string openId, string totalamount, string desc, string mchId, string partnerKey, string wxappId, string cert, out RequestResultDto result)
        {
            EnterprisePayReturn srpReturn = null;

            result = new RequestResultDto {
                Ret = 0, Msg = "ok"
            };
            try
            {
                string url = "https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers";

                string orderNo = mchId + DateTime.Now.ToString("yyyyMMdd") + Utils.CreateNoncestr(10); //商户订单号

                ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
                X509Certificate2 cer        = new X509Certificate2(cert, mchId, X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.MachineKeySet);
                HttpWebRequest   webrequest = (HttpWebRequest)HttpWebRequest.Create(url);
                webrequest.ClientCertificates.Add(cer);
                webrequest.Method = "post";

                var dict = new Dictionary <string, string>
                {
                    { "nonce_str", Utils.CreateNoncestr(16) },
                    { "mchid", mchId },
                    { "mch_appid", wxappId },
                    { "partner_trade_no", orderNo },
                    { "openid", openId },
                    { "check_name", "NO_CHECK" },
                    { "amount", totalamount },
                    { "desc", desc },
                    { "spbill_create_ip", Utils.GetIp() },
                };
                dict.Add("sign", Signature(dict, partnerKey));
                var postDataStr = Utils.ArrayToXml(dict);
                _log.Add(new Log()
                {
                    Msg = postDataStr, Ret = 168, CreateTime = DateTime.Now
                });
                byte[] postData  = Encoding.UTF8.GetBytes(postDataStr);
                Stream reqStream = webrequest.GetRequestStream();
                reqStream.Write(postData, 0, postData.Length);
                reqStream.Close();

                HttpWebResponse webreponse = (HttpWebResponse)webrequest.GetResponse();
                Stream          stream     = webreponse.GetResponseStream();
                string          resp       = string.Empty;
                using (StreamReader reader = new StreamReader(stream))
                {
                    resp = reader.ReadToEnd();
                    _log.Add(new Log()
                    {
                        Msg = resp, Ret = 168, CreateTime = DateTime.Now
                    });
                }
                srpReturn = XmlHelper.XmlToEntity <EnterprisePayReturn>(resp);
            }
            catch (Exception exp)
            {
                result = new RequestResultDto {
                    Ret = 10009, Msg = "出错," + exp.Message
                };
                _log.Add(new Log()
                {
                    Msg = exp.ToString(), Ret = 168, CreateTime = DateTime.Now
                });
            }
            return(srpReturn);
        }