Пример #1
0
        private String APIAnalysisResponse(API_ANALYSIS_DATA json)
        {
            location    = ErrorLog.ErrorLocation.Analysis;
            n           = DateTime.Now;
            requestTime = n.ToString("yyyy-MM-ddTHH:mm:ss+9:00");

            if (requestTime.Length < 24)
            {
                requestTime = String.Format("{0:0000}-{1:00}-{2:00}T{3:00}:{4:00}:{5:00}+9:00", n.Year, n.Month, n.Day, n.Hour, n.Minute, n.Second);
            }
            var _n     = GetUnixTime(n);
            var nonce  = GetNonce(_n);
            var digest = GetDigest(hex, requestTime, api_Pass, access_Key);

            var wsse = String.Format("UsernameToken Username={0}, PasswordDigest={1}, Nonce={2}, Created={3}", api_Id, digest, nonce, requestTime);

            //if (!IP.StartsWith("http"))
            //{
            //    IP = "http://" + IP;
            //}

            var url = IP + "/WebAPI/analysis.php";
            var req = System.Net.HttpWebRequest.Create(url);

            req.Method = "POST";
            req.Headers.Add("x-wsse", wsse);
            req.ContentType = "application/zip";

            try
            {
                byte[]     b;
                FileStream fs = new FileStream(System.Environment.CurrentDirectory + @"\analysis\json.zip", FileMode.Open, FileAccess.Read);
                b = new byte[fs.Length];
                fs.Read(b, 0, b.Length);
                var stream = req.GetRequestStream();
                stream.Write(b, 0, b.Length);
                fs.Close();
                stream.Close();

                System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)req.GetResponse();
                var resStream = res.GetResponseStream();
                Status = res.StatusCode.ToString();

                resStream.Close();
                res.Close();
                return(Status);
            }
            catch (System.Net.WebException e)
            {
                Status = e.Status.ToString();
                return(Status);
            }
            catch (Exception ex)
            {
                return(Status);
            }
        }
Пример #2
0
        /// <summary>
        /// 患者情報データ取得
        /// </summary>
        /// <returns></returns>
        private API_PATIENT_INFO APIPatientInfoRequest()
        {
            location    = ErrorLog.ErrorLocation.UserSearch;
            n           = DateTime.Now;
            requestTime = n.ToString("yyyy-MM-ddTHH:mm:ss+9:00");

            // -- 2018.01.29 ADD START --
            if (requestTime.Length < 24)
            {
                requestTime = String.Format("{0:0000}-{1:00}-{2:00}T{3:00}:{4:00}:{5:00}+9:00", n.Year, n.Month, n.Day, n.Hour, n.Minute, n.Second);
            }
            // -- 2018.01.29 ADD END   --

            var _n     = GetUnixTime(n);
            var nonce  = GetNonce(_n);
            var digest = GetDigest(hex, requestTime, api_Pass, access_Key);

            var wsse = String.Format("UsernameToken Username={0}, PasswordDigest={1}, Nonce={2}, Created={3}", api_Id, digest, nonce, requestTime);

            //if (!IP.StartsWith("http"))
            //{
            //    IP = "http://" + IP;
            //}

            var url = URL;

            String bodyData = "{\"c\":\"" + card_no + "\"}";

            Byte[] b = Encoding.ASCII.GetBytes(bodyData);

            var req = System.Net.HttpWebRequest.Create(url);

            req.Method = "POST";
            req.Headers.Add("X-WSSE", wsse);
            req.ContentType   = "application/x-www-form-urlencoded";
            req.ContentLength = b.Length;

            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | (SecurityProtocolType)768 | (SecurityProtocolType)3072;

            try
            {
                var stream = req.GetRequestStream();
                stream.Write(b, 0, b.Length);
                stream.Close();

                System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)req.GetResponse();

                var resStream = res.GetResponseStream();

                var serializer        = new DataContractJsonSerializer(typeof(API_PATIENT_INFO));
                API_PATIENT_INFO info = (API_PATIENT_INFO)serializer.ReadObject(resStream);
                Status = res.StatusCode.ToString();
                resStream.Close();
                res.Close();

                return(info);
            }
            catch (System.Net.WebException e)
            {
                Status = e.Status.ToString();

                //ErrorLog.ErrorOutput(Status, location);
            }
            catch (Exception e)
            {
                //ErrorLog.ErrorOutput(e.Message, location);
            }
            return(new API_PATIENT_INFO());
        }