网站建设 图书,c#网站开发需要的技术,wordpress移动到回收站时发生错误.,西城网站制作公司项目场景#xff1a;
需求#xff1a;我在做网络接口链接#xff0c;使用的unity自带的 UnityWebRequest #xff0c;数据传输使用的json#xff0c;json和自定义数据转化使用的也是unity自带的JsonUtility。使用过程中发现两个bug。 1.安全验证失败。 报错为#xff1a…项目场景
需求我在做网络接口链接使用的unity自带的 UnityWebRequest 数据传输使用的jsonjson和自定义数据转化使用的也是unity自带的JsonUtility。使用过程中发现两个bug。 1.安全验证失败。 报错为failed1:SSL CA certificate error 1.安全验证失败
报错为failed1:SSL CA certificate error 和 Curl error 60: Cert verify failed: UNITYTLS_X509VERIFY_FLAG_USER_ERROR1
解决方案
原因可能是因为网络连接是私人网路的原因。
using UnityEngine.Networking;public class WebReqSkipCert : CertificateHandler
{protected override bool ValidateCertificate(byte[] certificateData){return true;}
}加一个这样的代码重写CertificateHandler跳过安全验证就行了。 HTTPRequest 不需要这样特意跳过但是HTTPRequest 需要使用插件Best HTTP (Pro)。
2. JsonUtility.ToJson 转换为字符串失败
解决方案
1.自定义的类需要序列化也就是给你的自定义类 加上 [Serializable] 就行
2.变量例如 string 不能加{get;set;},否则此变量无法序列化如图红框里的就是无效的。 去掉{get;set;}就好了。
3.签名无效
报错为Invalid Signature! and StringToSign: POST\n*\napplication/json;charsetutf-8\nx-ca-key:27701323\n/artemis/api/resource/v1/cameras 这意味着你填写的签名不对改签名就行了。