Backand deleteFile响应ok但实际上没有删除文件(angular2)

时间:2017-02-26 12:41:04

标签: angular delete-file backand

嗨,所以我的问题是我正在上传图像,我可以在我的应用中查看它们,在服务器上查看它们。

当我尝试删除文件时出现问题,我仔细检查名称是否与myimagetodelete.jpg

这是代码......

#include <vector>
#include <fstream>
#include <iostream>

using namespace std;

void write() {
  ofstream file;
  file.open("temp.data", ios::binary);
  for(unsigned int i = 0; i < 100000; i++){
    int temp = 0; // I don't know the generateRandom(...) function
    file.write(reinterpret_cast<const char*>(&temp),sizeof(temp));
  }
}

void read() {
  ifstream ifile;
  ifile.open("temp.data", ios::binary);

  ifile.seekg(0, ifile.end);
  long size = ifile.tellg();
  ifile.seekg(0, ifile.beg);

  int restore = 0;
  vector<int> v;
  while(ifile.tellg() < size){
    ifile.read(reinterpret_cast<char*>(&restore), sizeof(restore));
    v.push_back(restore);
  }

  cout << v.size() << endl;
}

int main()
{
  write();
  read();

  return 0;
}

我所看到的每个地方都有相似的代码,如果不相同的代码,所以我无法弄清楚为什么这不起作用,除非它是backand的问题?

我的“项目”对象文件功能在后面和仪表板中就像下面需要的那样。

    public deleteFile(objectName: string, fileActionName: string, filename: string) {
    // objectName: items
    // fileActionName: files
    let headers = this.authHeader;

    headers.append('Content-Type', 'application/json');  
    return this.http.delete(
        this.api_url + "/1/objects/action/" +  objectName + '?name=' + fileActionName + "&filename=" + filename,
        {
            headers: headers
        }
    );   

}

}

以上代码几乎是“开箱即用”。

任何帮助都会非常感激在这个问题上疯狂!

1 个答案:

答案 0 :(得分:0)

感谢您使用Backand。我们在AWS中使用缓存来提高S3文件存储解决方案的性能。这可能是您沮丧的原因 - 我们已经完成了一些内部测试,缓存可能需要一个小时来更新其内容,这意味着虽然文件本身已被删除,但该文件仍可用于删除后的一段时间。

要验证文件是否已删除,您可以在Backand App Dashboard中访问您的存储设置 - &gt;托管 - &gt;存储文件,并刷新给定的列表。这应该告诉您文件是否实际被删除。在我自己的测试中,我验证了添加和删除非常简单的文件名,并且在上传或删除文件时没有遇到任何问题,因此您很可能只是在缓存过期的长端被捕获。

我们会更新我们的文档以解释此问题,对于您因此而感到的挫折,我们深表歉意。

还有一件事可能会导致此行为,但它与您的使用案例无关 - 这是针对来自网络的任何人的一般信息。如果您已修改文件存储操作以对上载的文件名进行更复杂的操作,则可能是导致问题的原因。确保文件操作中的代码正常工作,并且删除说明了对文件名的任何编程更改。