首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel云存储NotFoundException

Laravel云存储NotFoundException
EN

Stack Overflow用户
提问于 2018-03-21 03:02:01
回答 1查看 2.4K关注 0票数 1

我正在使用laravel-google-云存储包从github在我的Laravel项目上传文件到谷歌云存储。我在我的.env文件中有一个包含凭证、项目id和桶列表的JSON文件。

.env文件

代码语言:javascript
复制
GOOGLE_CLOUD_PROJECT_ID='myproject-123456'
GOOGLE_CLOUD_KEY_FILE=/var/www/project/credintials.json
GOOGLE_CLOUD_STORAGE_BUCKET=minisite_event

.json凭据

代码语言:javascript
复制
{
  "type": "service_account",
  "project_id": "myproject-123456",
  "private_key_id": "MY_PROJECT_KEY_ID",
  "private_key": "-----BEGIN PRIVATE KEY-----\nTHEWHOLEKEYHEREWITHVERYVERYLONGTEXTLIKEANYOTHERPRIVATEKEYFILE=\n-----END PRIVATE KEY-----\n",
  "client_email": "TEST@PROJECT_ID.iam.gserviceaccount.com",
  "client_id": "99112211221122112211",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://accounts.google.com/o/oauth2/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/ATESTSTRING.iam.gserviceaccount.com"
}

文件系统Config

代码语言:javascript
复制
'gcs' => [
            'driver' => 'gcs',
            'project_id' => env('GOOGLE_CLOUD_PROJECT_ID', 'your-project-id'),
            'key_file' => env('GOOGLE_CLOUD_KEY_FILE', null), // optional: /path/to/service-account.json
            'bucket' => env('GOOGLE_CLOUD_STORAGE_BUCKET', 'your-bucket'),
            'path_prefix' => env('GOOGLE_CLOUD_STORAGE_PATH_PREFIX', null), // optional: /default/path/to/apply/in/bucket
            'storage_api_uri' => env('GOOGLE_CLOUD_STORAGE_API_URI', null), // see: Public URLs below
        ]

在我的Laravel中,我试图将文件放到文件系统中。

代码语言:javascript
复制
$disk = Storage::disk('gcs');
$path = $disk->putFile('event_'.$id, $request->file('qqfile'));

然后我得到了这个错误:

代码语言:javascript
复制
NotFoundException
{
    "error": {
         "errors": [
            {
                "domain": "global",
                "reason": "notFound",
                "message": "Not Found"
            }
         ],
    "code": 404,
    "message": "Not Found"
    }
}

我不知道我做错了什么。而且,这个包没有很好的文档记录,这是我能找到的最好的包,已经实现了文件系统。

EN

回答 1

Stack Overflow用户

发布于 2018-03-30 09:53:04

这是解决方案的答案,我是如何解决的。这基本上不是一个技术或编程错误。这里的一切都是正确的,除了.env文件中的.env

在我的工作场所,GCP由我们的工程部主管控制,他也是我们领导的DevOp。我让他创建一个存储回购文件夹,让我通过我们的应用程序上传图像,并给我服务帐户凭据。他在桶里创建并给了我文件夹名。

.env 文件中,使用了文件夹名而不是桶名。当我给他看代码时,他发现它的名字是错误的。我更新了桶名,一切都很好。

道德观:

如果没有效果,请检查与问题有关的每个人的沟通。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49397424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档