草庐IT

google-app-engine - CookieJar 不捕获传入的 cookie

我正在尝试让Go在网页上为我提交一个表单来模拟登录。从那里我尝试使用cookie来保持持久session,以便再次调用子页面。我能够毫无问题地成功登录,我只是在捕获返回服务器设置的cookie时遇到了问题。我想知道是不是因为他们的登录脚本做了几次重定向?(我得到一个输出)。为什么我没有捕捉到返回的cookie有什么想法吗?这是我使用的代码:import("crypto/tls""fmt""io/ioutil""net/http""net/url""strings""sync")typeJarstruct{lksync.Mutexcookiesmap[string][]*http.Coo

google-app-engine - 如何管理我的谷歌应用引擎(使用 golang)的帐户?

我阅读了文档“UsingtheUsersService”并且它有效。但是我只想允许几个用户访问我的GAE,并限制其他用户。那么,我该如何管理我的谷歌应用引擎(使用golang)的用户帐户?我将使用“Google帐户”系统。我需要你的帮助。谢谢!祝你有个愉快的一天~ 最佳答案 我想你有两个选择:1.您可以只限制您的GoogleApp域的用户,进入管理>>应用程序设置>>身份验证类型。2.“appengine/user”pakage只是给你基本的功能。您可以使用它来检查当前用户的电子邮件是否在允许列表中。varallowed=[]str

google-app-engine - memcache 是否在 go on appengine 中工作?

我有一个应用试图在内存缓存中存储小图像(小于50kB),但每次调用memcache.Set()都会导致错误memcache:servererror。我在共享内存缓存类上,所以我知道没有服务保证,但目前我根本没有服务。是临时停电吗?是我运气不好吗?这是创建项目和调用内存缓存的代码片段。ctx是请求的应用引擎上下文。memkey是我的key(一个字符串)。img_data是一个包含我的数据的字符串。此代码在本地开发环境中运行良好。cache_item=&memcache.Item{Key:memkey,Value:bytes.NewBufferString(img_data).Bytes(

mysql - 无法在 Google App Engine 中使用 MySQL Go Driver

我正在尝试让我的应用程序连接到本地MySQL数据库。我正在一个文件中导入必要的包,该文件定义了一个初始化连接的函数import("database/sql"_"github.com/go-sql-driver/mysql")github.com/go-sql-driver/mysql在项目中只导入一次,我相信这意味着它的init只被调用一次。但是,每当我使用goappserve启动我的应用程序时,我都会收到为驱动程序mysql注册调用了两次我不知道是什么原因造成的。我知道有问题的行在哪里,但我不确定Register()方法是如何被调用两次的。我的怀疑是,因为goapp在有变化时刷新你的

google-app-engine - 如何在 Go AppEngine 中将数据存储查询存储到内存缓存?

我正在使用Golang开发Appengine。我在数据存储上有大约1000个实体。当我查询所有实体(q.GetAll(...))时,DatstoreReadOperations或DatastoreSmallOperations运行大约2%使用率(50k中的1k)。当我使用KeysOnly()或Project(..something...)时也是如此。我阅读了一些文章来解决这个问题,我必须将数据存储查询存储到内存缓存。但我找不到该怎么做。那么我如何在GoAppEngine中存储/检索数据存储查询到内存缓存?或者有其他方法可以减少数据存储读取/小型操作的使用吗?我需要你的帮助。谢谢。

google-app-engine - GO_GAE 构建 go-playground 错误

我要上传go-playground到我自己的GAE上线编码。首先,我使用命令goappserve它返回找不到包“code.google.com/p/go.tools/godoc。然后,我下载它,gogetcode.google.com/p/go.tools/cmd/godoc;但是,当我重试goappserve时命令,它显示:gocode/src/code.google.com/p/go.tools/astutil/enclosing.go:435:n.Lparenundefined(type*ast.TypeAssertExprhasnofieldormethodLparen);我尝

google-app-engine - 在 Appengine 上将帖子标记为已读

我目前正在设计一个在结构上类似于twitter/jaiku/reddit的应用程序。基本上有点赞和反对的小帖子,它们像reddit一样按分数和时间排序。我已经完成了所有这些工作,但现在我们的要求发生了一些变化,我们需要用户能够将帖子标记为“已读”。这将使该帖子不再显示在该用户的供稿中。我可以为(User,Post)的每个元组使用Read实体对其进行建模,但这需要大量工作才能找到该表中“不”存在的帖子。或者我可以反转这种关系,这样我就可以为每个未读的帖子创建一个实体,这样就可以更容易地找到表中“确实”存在的帖子......但是我需要在这个表中创建一个条目每次发帖时的每个用户。这不会很好地

google-app-engine - datastore.NewQuery() 过滤器规范中的 golang slice 变量?

我正在使用strings.Split()对逗号分隔的字符串进行slice,并且能够提取所需的子slice。friends:=string("9q4kq,9q47y,9q4kp,9q4kj,9q4km,9q47v,9q4kr,9q47z")s:=strings.Split(friends,",")f0:=s[0]当我使用slicef0指定datastore.NewQuery()的Filter组件时,datastore.NewQuery()阻塞(没有返回记录)>:Filter("Field1=",f0)同样的结果使用Filter("Field1=",string(f0))但是,当我对Fil

google-app-engine - GAE Golang 实现一些独特的请求队列?

我有一个GoogleAppEngineGo应用程序正在处理来自第三方服务器的实时通知。这些通知或多或少需要在现场记录和处理。然而,第三方服务器有一个坏习惯,即同时发送两个请求,有时彼此相隔1毫秒-速度太快甚至无法使数据存储/内存缓存写入指示信号量。我想知道是否有一种方法可以巧妙地处理这种并发请求?理想情况下,我希望将它们放在某个堆栈上,这样可以保证一次处理一个项目。在GAEGolang中可以实现这样的功能吗? 最佳答案 为具有较短超时时间的消息的唯一标识符添加内存缓存(实际上并不重要)。如果添加成功,处理消息。

google-app-engine - 为什么测试没有运行? ( Golang ) - goapp 测试 - 错误?

我正在尝试运行GAE测试多个包。我的应用程序(testapp)如下所示:testapp>README.mdpackage1package2每个包都有两个go文件。一个是包本身,另一个是“测试”包。包1$lspackage1package1.gopackage1_test.go包2$lspackage2package2.gopackage2_test.go运行我使用的测试goapptest-v./...输出:warning:buildingout-of-datepackages:github.com/mihai/APIinstallingthesepackageswith'gotest-