南希文件上载国际字符

时间:2019-05-03 09:52:44

标签: angular nancy

我正在使用Nancy托管内部网站,我需要使用 名称中的国际字符(é,á,ü等) 这是帖子处理程序:

            Post["/savefile"] = _ => {
                var file = Request.Files.Single();
                byte[] bytes = Encoding.Default.GetBytes(file.Name);
                var fullname = string.Format("{0}{1}_{2}", @"C:\Files\", "Test", Encoding.UTF8.GetString(bytes));
                try {
                    using (var filestream = File.OpenWrite(fullname)) {
                        file.Value.CopyTo(filestream);
                    }
                    return "OK";
                } catch (Exception ex) {
                    return ex.Message;
                }

以及Angular中的请求:

  SaveFile(){
    const fd = new FormData();
    fd.append('File',this.file,encodeURIComponent(this.selectedFile));
    this.httpClient.post('http://localhost:61210/savefile',fd,{responseType:'text'}).subscribe(result=>{
      alert(result);
    });
  }

该文件名中使用常规字符,但是我收到“从源'http://localhost:61210/savefile'访问'http://localhost:4200'处XMLHttpRequest的信息已被CORS策略阻止:没有'Access-Control-允许来源的标头出现在所请求的资源上。”当我尝试匈牙利字符。 我很确定这与字符编码有关,但是我想念什么?

0 个答案:

没有答案