コード例 #1
0
        private string GetXml(BuildSettings build)
        {
            var xml = Encoding.UTF8.GetString(File.ReadAllBytes("Resources/file.xml"));

            xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword);
            return(xml);
        }
コード例 #2
0
        public void ValidateSpecialCharactersFromXML()
        {
            var   build = new BuildSettings();
            Stamp stamp = new Stamp(build.Url, build.Token);
            var   xml   = File.ReadAllText("Resources/SpecialCharacters.xml");

            xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword);
            var response = stamp.TimbrarV1(xml);

            Assert.IsTrue(response.status == "success", "Result not expected. Error: " + response.message);
            Assert.IsFalse(string.IsNullOrEmpty(response.data.tfd), "Result not expected. Error: " + response.message);
        }
コード例 #3
0
        public async Task Stamp_Test_ValidateSpecialCharactersFromXMLAsync()
        {
            var     build = new BuildSettings();
            StampV4 stamp = new StampV4(build.Url, build.Token);
            var     xml   = File.ReadAllText("Resources/SpecialCharacters.xml");

            xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword);
            var response = await stamp.TimbrarV1Async(xml, "*****@*****.**");

            Assert.True(response.status == "success", "Result not expected. Error: " + response.message);
            Assert.False(string.IsNullOrEmpty(response.data.tfd), "Result not expected. Error: " + response.message);
        }
コード例 #4
0
    /// <summary>
    /// www发送接收数据
    /// </summary>
    /// <param name="bytes"></param>
    /// <returns></returns>
    IEnumerator SendMessage(byte[] bytes, uint cmdId)
    {
        Dictionary <string, string> headers = new Dictionary <string, string>();

        headers.Add("CONTENT_TYPE", "multipart/form-data");
        headers.Add("cmdId", cmdId.ToString());
        headers.Add("userId", uid.ToString());
        headers.Add("sign", SignTools.Encryption(uid.ToString(), cmdId.ToString()));

        Debug.Log("发送消息:" + cmdId + " sign=" + SignTools.Encryption(uid.ToString(), cmdId.ToString()));
        WWW getData = new WWW(Sendlink, bytes, headers);

        yield return(getData);

        //try
        {
            if (getData.error != null)
            {
                Debug.LogError(string.Format("GetData={0}", getData.error));
            }
            else if (getData.text.StartsWith("Error"))
            {
                Debug.LogError(getData.text);
            }
            else
            {
                //解包头
                Dictionary <string, string> header = getData.responseHeaders;


                uint id = uint.Parse(header["CMDID"]);
                Debug.Log(header["CMDID"]);

                object obj = Serialization.Deserialize((uint)id, getData.bytes);
                if (id == NetMessageDef.ResLogin)
                {
                    protos.Login.ResLogin login = obj as protos.Login.ResLogin;
                    if (login != null)
                    {
                        uid  = login.uid;
                        salt = login.salt;
                        Debug.Log("uid=" + uid + "  salt=" + salt);
                    }
                }
                RequsterNotifier(id, obj, null);
            }
        }
        //catch (System.Exception ex)
        //{
        //    Debug.LogWarning(ex.Message);
        //}
    }
コード例 #5
0
        public void MultipleStampXMLV1byToken()
        {
            var   build        = new BuildSettings();
            var   resultExpect = false;
            int   iterations   = 10;
            Stamp stamp        = new Stamp(build.Url, build.Token);
            List <StampResponseV1> listXmlResult = new List <StampResponseV1>();

            for (int i = 0; i < iterations; i++)
            {
                string xml = Encoding.UTF8.GetString(File.ReadAllBytes("Resources/file.xml"));
                xml = SignTools.SigXml(xml, Convert.FromBase64String(build.Pfx), build.CerPassword);
                var response = (StampResponseV1)stamp.TimbrarV1(xml);
                listXmlResult.Add(response);
            }
            if (listXmlResult != null)
            {
                resultExpect = listXmlResult.FindAll(w => w.status == ResponseType.success.ToString() || w.message.Contains("72 horas")).Count == iterations;
            }

            Assert.IsTrue((bool)resultExpect);
        }