我正在尝试制作Web字体并将其部署在AWS S3上.
在除IE9之外的所有浏览器中都可以正常工作,它在尝试加载woff文件时表示跨源请求失败.
我已经在很多论坛上阅读了很多关于有问题的人,但是我找不到修复方法.
我认为这与S3上的CORS设置没有向IE9发送正确的数据或东西有关?
(适用于Firefox,Chrome,IE7,8等)
我看到解决问题的唯一建议是,启动EC2实例并为字体创建一个Web主机(完全矫枉过正!),另一个是将css文件命名为.php并在php中设置标头(但是这是愚蠢的).
任何人都知道如何(如果可能的话)解决这个问题?
谢谢
编辑
我的CORS配置:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud) 我正在使用Ecto.UUID.generate在用户模型上创建随机令牌。
在我的ExUnit测试中,我想测试调用创建路由的控制器,但是因为令牌总是随机的,我无法确定性地测试结果。
理想情况下,我希望能够在我的测试中存根,Ecto.UUID.generate以便它始终创建相同的UUID,以便我可以正确测试响应。
谢谢 :)
我有一个使用旧版react-bootstrap 的项目
在我的 package.json 我有
"react-boostrap": "^0.13.3"
Run Code Online (Sandbox Code Playgroud)
那里有一个导致问题的错误,它的修复非常简单,所以我分叉了 repo,回滚到 v0.13.3 的提交:
git reset --hard <commit-hash>
Run Code Online (Sandbox Code Playgroud)
修复了我的 1 行,然后用力推回我的叉子。
然后我在主项目中更新了我的 package.json 以指向我的 fork:
"react-boostrap": "mygithubrepo/react-bootstrap"
Run Code Online (Sandbox Code Playgroud)
我删除了 node_modules 目录并运行sudo npm cache clear以确保一切都很好且新鲜。然后我跑了npm install它确实从 repo 中拉下了我的 react-bootstrap 版本。
但是,它现在下拉的版本与 node_modules 文件夹中的格式不同。从本质上讲,它似乎并没有构建该项目。
如果我使用:
"react-boostrap": "^0.13.3"
Run Code Online (Sandbox Code Playgroud)
然后 node_modules 文件夹包含构建的代码,如下所示:
+node_modules
--+react_bootstrap
----+utils
-----Acordion.js
etc.....
Run Code Online (Sandbox Code Playgroud)
但是当我将它指向我的 repo 的分叉版本时:
"react-boostrap": "mygithubrepo/react-bootstrap"
Run Code Online (Sandbox Code Playgroud)
然后我只得到节点模块中的源代码库结构(它似乎没有被构建)
+node_modules
--+react_bootstrap
----+docs
----+ie8
----+src
-------+utils
--------Acordion.jsx
........etc.....
----+tools
etc.....
Run Code Online (Sandbox Code Playgroud)
现在,当我引用 react bootstrap using require('react-bootstrap')then 它不起作用(因为尚未构建文件)。
那么我指向 npmjs 上的文件而不是 …
我有一个从泳池男孩工作人员衍生的功能
基本概述:
我遇到的问题是,当我运行ExUnit测试时,它一直顺利到达生成的进程,并且可以输出数据(使用IO.inspect)。
当我运行System.cmd(“ wget” ....时,我在运行ExUnit测试时在终端中看到了wget输出,因此该命令实际上正在运行,但是执行该命令后我没有执行任何操作。
所以在我的工人中,如果我这样做:
IO.puts "hello"
System.cmd("wget", opts)
IO.puts "world"
Run Code Online (Sandbox Code Playgroud)
然后我看到hello我看到了wget的输出,但是我没有看到world
如果我做其他类似的事情:
IO.puts "hello"
File.write("/tmp/temp.txt", "test")
IO.puts "world"
Run Code Online (Sandbox Code Playgroud)
然后我同时看到hello和world并且写入了一个文件。
是否有System.cmd我所缺少的特定信息导致情况如此?当它不在单独的进程中运行时,它可以很好地工作,因此它是进程与System.cmd的组合。
有任何想法吗?谢谢!
我想知道它是否可能(以及如果它可以如何去做)
基于日期字段为空或非空来对postgres 9.1中的表进行分区.
所以有效地,我有一个表,它变得非常大,我有一个"delete_on"日期,当项目被删除时,他们只是被标记为已删除.
这对于将它们存档并使活动表保持较小是理想的.
我在考虑一个表分区,只是有类似的东西
active(delete_on = NULL)
archive(deleted_on!= NULL)
然后当我对记录进行更新并将其设置为已删除时,它将被写入存档表.
我可以通过创建两个单独的表并编写代码来复制数据来手动完成,但是如果我可以直接将它放在数据库上,我会喜欢它.
有任何想法吗?
编辑:
主表
CREATE TABLE my_table (
id int not null,
deleted date not null,
number1 int,
number2 int
);
Run Code Online (Sandbox Code Playgroud)
分区
CREATE TABLE my_table_active (
CHECK (deleted IS NULL)
) INHERITS (my_table);
CREATE TABLE my_table_archive (
CHECK (deleted IS NOT NULL)
) INHERITS (my_table);
Run Code Online (Sandbox Code Playgroud)
触发功能
CREATE OR REPLACE FUNCTION my_table_insert_trigger()
RETURNS TRIGGER AS $$
BEGIN
IF ( NEW.deleted IS NULL ) THEN
INSERT INTO my_table_active VALUES (NEW.*); …Run Code Online (Sandbox Code Playgroud)