Unity WebGL cookie不起作用

时间:2017-03-21 04:16:10

标签: javascript php unity3d

任何人都知道为什么这个set / get cookie脚本在Unity WebGL中不起作用? 脚本存储为Unity项目中的javascript插件。

从C#调用时,脚本不会设置cookie。

我称之为设置cookie,然后当我回到同一个站点并尝试读取cookie时,它们不存在 - 只返回空白。

setCookie: function (cname, cvalue, exdays) {
   var d = new Date();
   d.setTime(d.getTime() + (exdays*24*60*60*1000));
   var expires = "expires="+ d.toUTCString();
   document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
   console.log('set cookie='+document.cookie);
}


getCookie: function (cname) {
   var ret="";
   var name = cname + "=";
   var decodedCookie = decodeURIComponent(document.cookie);
   console.log('get cookie='+decodedCookie);
   var ca = decodedCookie.split(';');
   for(var i = 0; i <ca.length; i++) {
       var c = ca[i];
       while (c.charAt(0) == ' ') {
           c = c.substring(1);
       }
       if (c.indexOf(name) == 0) {
           ret=c.substring(name.length, c.length);
           break;
       }
   }
   var buffer = _malloc(lengthBytesUTF8(ret) + 1);
   writeStringToMemory(ret, buffer);
   return buffer;
},

以下是我打电话给他们的方式。

using System.Runtime.InteropServices;

public class LocalLogin : MonoBehaviour {

[DllImport("__Internal")]
private static extern string getCookie(string name);

[DllImport("__Internal")]
private static extern void setCookie(string cname, string cvalue, int exdays);

void Start() {
   setCookie("session","ruh3uhnoh",7);
   setCookie("userID","id123",7);

   string session=getCookie("session);
   string id=getCookie("userID");
   ....
}

两者都是空白的。有谁知道发生了什么?我在firefox中尝试过它。

由于

0 个答案:

没有答案
相关问题