草庐IT

openssl-engine

全部标签

google-app-engine - 将 base64 字符串数据发送到服务器但收到空表单值

我有一个用Vue编写的前端和一个用Golang编写的后端。我正在使用Google应用引擎来运行我的后端服务,并使用gclouddatastore和gcloudstorage来存储通过前端表单提交的数据和图像。我一直在尝试使用POST方法上传图像。我将图像转换为base64字符串。然后我将数据字符串添加到formdata并POST到我的后端服务。我在Go程序中不断得到empty表单值。Go无法读取base64字符串是否有原因,或者我错过了有关FormData的一些重要信息?任何帮助都有帮助,谢谢。我的前端代码:varmyForm=document.getElementById('myFo

google-app-engine - AppEngine 灵活的静态 index.html

我正在尝试将AppEngine灵活(go)后端/api服务器与静态前端一起设置。理想情况下,我想将api服务器与前端完全分离,因此计划从云存储中提供所有静态文件。我已设法通过在云存储的子域上提供静态文件来设置它-但是,这意味着用户必须访问子域才能检索index.html文件。有谁知道是否有可能(例如在app.yml中——但无法在此处的文档中找到任何内容)从云存储中获取index.html?即这样:https://example.com将从云存储返回index.htmlhttps://example.com/api路由到我的应用引擎服务? 最佳答案

google-app-engine - 是否可以在 Google appengine 标准环境中使用 Gorilla mux 路由器?

有没有办法让appengine.Main()与mux路由器一起工作?以下代码编译但不匹配任何路由。funcmain(){r:=mux.NewRouter()r.HandleFunc("/",indexHandler)http.Handle("/",r)appengine.Main()} 最佳答案 问题的根源是我的app.yaml。我有handlers:-url:/api/.*script:_go_app因此,为了正确匹配路由,我必须更新mux路由器中的路径以匹配完整路径。r.HandleFunc("/api/",indexHandl

c# - 使用 x509.ParseCertificateRequest 解码失败但 openssl 可以吗?

当我尝试加载PEM编码的CSR时,Golang没有正确解析CSR中的ASN.1数据。它吐出序列被截断。另一方面,OpenSSL可以处理CSR并打印出正确的CN。这是生成代码(在c#中):publicstringgenerateCSR(stringcn){try{AsymmetricCipherKeyPairpair=this.keyHolder.keypair;varsubject=newX509Name("CN="+cn);varpkcs10CertificationRequest=newPkcs10CertificationRequest(PkcsObjectIdentifiers

google-app-engine - 将 *Key 存储到 GAE 本地数据存储在 DataStoreViewer 中给我错误

我在实体A中有一个*Key引用实体B。我可以put()数据到数据存储而不会出错,但是当尝试从数据存储查看器浏览实体A时,它会出现以下错误:'Incompletekeyfoundforreferenceproperty%s.'%name)BadValueError:Incompletekeyfoundforreferencepropertyds_key.似乎是在指责key不完整。如果我使用NewKey()获取一个完整的key,我需要手动为该key提供一个唯一的字符串或intID,这不是我想要的。我只希望数据存储为我生成一个B的key,并且我保留来自实体A的该key。谢谢

google-app-engine - GAE 在关于将实体一分为二以提高性能。(golang)

我有一个主要包含两组信息的实体帐户。Account{a1//Group1rarelychangea2a3a4...b1//Group2changefrequentlyb2b3b4...}第一组是一般信息,不会更新太频繁,但第二组会经常更改。我想知道我是否应该将第2组提取到另一个实体并将key存储在帐户中,这样当我更新第2组时,我只需要将第2组的数据put()。我担心的是,几乎所有对服务器的操作都需要来自1+2组的数据。如果我将帐户拆分为2,我需要执行两次get()来检索这两个数据。我知道读取表单数据存储比写入便宜得多。但是拆分实体不会减少对put()的调用。在这种情况下,我不知道应该将

google-app-engine - datastore.Get 使用祖父 key

是否有某种方法可以通过不提供key的完整路径,而是提供实体的根父实体来执行datastore.Get?例如,假设有一个SubFolder实体,位于Folder实体下,而该实体本身位于User实体下。这不起作用:subFolderKey:=datastore.NewKey(c,"SubFolder","mySubfolder",0,userKey)datastore.Get(c,subFolderKey,subFolder)即使mySubfolder是userKey的孙代。有没有办法在不指定完整父路径的情况下做到这一点? 最佳答案 不

google-app-engine - Golang 应用引擎的 git 推送和部署

appcfg.py--oauth2update./有效但想用gitpush替换它并部署。成功推送后,appengine提示我的.go文件未编译。appengine是否可以在使用git存储库时编译文件?如果不是,我需要将编译后的文件放在另一个目录中吗? 最佳答案 Thisisaknownissue.请加注星标。现在,您所能做的就是继续使用appcfg.py。如果一直进行OAuth授权很麻烦(或者您有多个帐户),请考虑存储您的刷新token然后执行:appcfg.pyupdate.--oauth2--oauth2_refresh_tok

google-app-engine - AppEngine 的 datastore.Get() 是否不验证所请求 key 的命名空间?

我在go-appengine中使用命名空间和数据存储,大致如下:funcgetThing()*Thing{nctx:=appengine.Namespace(ctx,"whatever")thing:=Thing{}key,err:=datastore.Get(nctx,key,&thing)iferr!=nil{returnnil,err}returnthing,nil}很简单吧?不幸的是,如果事实证明nctx的命名空间与键的命名空间不匹配,它无论如何都会愉快地获取对象。而且AFAICT,没有办法手动获取key的“命名空间”字段来手动验证它。这对我们的应用很重要,因为我们有来自Web

google-app-engine - Go App Engine 获取 API 错误 7(图像 : ACCESS_DENIED)

这似乎是因为没有加载图像服务,但模块已加载。我在开发服务器上没有遇到这些错误。我认为错误来自此调用image.ServingURL(c,blobKey,nil),其中blobKey是storageKey:=r.FormValue("storageKey")blobKey,err:=blobstore.BlobKeyForFile(c,storageKey)而存储key是在GSE中代表一个文件的key。有人知道如何解决这个错误吗? 最佳答案 这可能是因为您拥有的blobKey引用了您的应用无权访问的CloudStorage存储桶。