1

我有一个服务器/客户端项目,都是用 dart 编写的。现在我的服务器在端口上启动,1337当我使用.Run in dartium3030

问题是这在使用AJAX调用时会导致CORS 。我已正确设置我的服务器以接受其他来源(带有),但是,例如,cookie 不会一起发送。Access-Control-Allow-Origin

现在我想知道:有没有办法用我的服务器(运行1337)来提供我的文件,并且仍然有可能在 dart 编辑器中调试客户端代码?

4

1 回答 1

4

我的理解是您可以调试,但真正的问题是由于缺少 cookie,您无法从服务器返回预期的数据。

默认情况下,标准 CORS 请求不会发送或设置任何 cookie。

为了在请求中包含 cookie,除了设置服务器之外,您还需要指定withCredentials属性,例如:

HttpRequest.getString(url, withCredentials:true)...

您还需要设置服务器以提供Access-Control-Allow-Credentials标头。

编辑:似乎另一个问题是您不想拥有 2 台服务器,每台服务器都服务于应用程序的不同部分。

在这种情况下,您可以配置 DartEditor 以启动 URL,而不是文件。转到Run > Manage Launches并添加使用指定的 URL 和源目录创建新的 Dartium 或 Dart2JS 启动。

另一种选择是选择Run > Remote Connection并附加到正在运行的浏览器或 Dart VM 实例。

警告:我没有尝试过这些选项,所以我不知道它们有多稳定

于 2013-06-05T14:56:55.930 回答