對于我的 PHP 應(yīng)用程序,我需要使用Syncfusion Javascript Word Processor。為了使用默認(rèn)文本對其進(jìn)行實例化,Syncfusion 要求將此文本格式化為 SFDT,一種 JSON。//SFDT Example"sections": [ { "blocks": [ { "inlines": [ { "characterFormat": { "bold": true, "italic": true }, "text": "Hello World" } ] } ], "headersFooters": { } } ]使用 .NET Core 包Syncfusion.EJ2.WordEditor.AspNet.Core,我可以將 doc(x) 文件轉(zhuǎn)換為 sfdt 格式。因此,我使用 Visual Studio 2017 For Mac 使用此包創(chuàng)建了一個新的 .NET Core Web Api 應(yīng)用程序。using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Threading.Tasks;using Microsoft.AspNetCore.Http;using Microsoft.AspNetCore.Mvc;using Syncfusion.EJ2.DocumentEditor;namespace SyncfusionConverter.Controllers{ [Route("api/[controller]")] public class SyncfusionController : Controller { [AcceptVerbs("Post")] public string Import(IFormCollection data) { if (data.Files.Count == 0) return null; Stream stream = new MemoryStream(); IFormFile file = data.Files[0]; int index = file.FileName.LastIndexOf('.'); string type = index > -1 && index < file.FileName.Length - 1 ? file.FileName.Substring(index) : ".docx"; file.CopyTo(stream); stream.Position = 0; WordDocument document = WordDocument.Load(stream, GetFormatType(type.ToLower())); string sfdt = Newtonsoft.Json.JsonConvert.SerializeObject(document); document.Dispose(); return sfdt; } } }}我發(fā)出 Ajax 請求,以我的 doc(x) 文件作為參數(shù)調(diào)用此 .Net 方法。執(zhí)行 loadFile 函數(shù)時,我在瀏覽器的控制臺中收到此錯誤:“跨源請求(阻止多源請求):“同源”策略不允許查閱位于https://localhost上的遠(yuǎn)程資源:5001/Syncfusion/Import。原因:CORS 請求失敗。”我按照本教程和那些 SO 發(fā)布Link1 Link2但它不起作用。有什么想法可以解決這個問題嗎?
1 回答

牧羊人nacy
TA貢獻(xiàn)1862條經(jīng)驗 獲得超7個贊
你的代碼看起來不錯。我的猜測是,F(xiàn)irefox 與您的 asp.net 核心應(yīng)用程序的自簽名開發(fā)證書存在問題。我們過去曾多次遇到這種情況,F(xiàn)irefox 錯誤消息總是有點(diǎn)誤導(dǎo)。
我們?yōu)椤靶迯?fù)”它所做的是:
在 Firefox 中打開https://localhost:5001
您現(xiàn)在應(yīng)該在 Firefox 中看到證書錯誤
“信任”自簽名證書/為其添加例外
再次嘗試您的 api 調(diào)用。它現(xiàn)在應(yīng)該可以工作
- 1 回答
- 0 關(guān)注
- 147 瀏覽
添加回答
舉報
0/150
提交
取消