小编Bos*_*osh的帖子

(移动)浏览器支持跨源资源共享?

我正在构建一个使用w3c CORS的站点,以便向远程服务器发出oAuth签名的HTTP请求.Mozilla有一个很好的文档,解释了如何制作和接收CORS请求,并且在firefox,chrome和safari中有很好的支持.

有没有人维护一个浏览器支持 CORS功能的矩阵(例如预检OPTIONS对跨域非简单GET的请求)?

我对移动浏览器特别感兴趣.有人能指出我追踪CORS支持的资源吗?

mobile http cross-domain cors http-options-method

5
推荐指数
1
解决办法
4280
查看次数

当任何代码重新编译时,我可以强制grails dev服务器重新加载吗?

简短的问题是:每当热编译和交换新代码时,我可以强制Grails 2.2 dev服务器重新加载(重新初始化所有单例服务等)吗?

让我用一个例子来说明问题.我们这样说吧

  1. 我有一个单例范围的服务MyService.在它的@PostConstruct函数中,它初始化一个新的类型对象Helper(并保持引用).

  2. run-app在开发模式,测试出来,然后......

  3. 我编辑源代码 Helper.groovy

接下来会发生什么:

  • Grails自动重新编译 Helper.groovy
  • Grails将新代码交换到正在运行的开发服务器
  • 但是Helper没有调用新代码,因为已经实例化的MyService对象已经具有旧类实例的句柄.

我目前的解决方法是将依赖图保留在我的脑海中,并且每次更改其中一个依赖项时都会进行touch简单的修改MyService.但是,每当交换新代码时,我宁愿强制dev服务器重新加载.

那么...... 是否有可能在任何代码更改时强制dev服务器重新加载

奖金问题:当我改变域对象,我可以强制开发服务器"追随"的唯一途径这些变化是stop-app,cleanrun-app手动.我是否可以根据需要自动执行此操作?

谢谢!

grails groovy tomcat compilation

5
推荐指数
1
解决办法
606
查看次数

ADB over USB:端口转发 <150kB/s 尽管互联网和 USB > 2MB/s

通过 USB 使用 ADB,我注意到端口转发非常慢(~150kB/s),尽管我的:

  • 互联网连接速度很快(~2MB/s),并且
  • USB 连接速度快 (~5MB/s)

我正在寻求帮助调试。

我很感激有关如何调查原因的任何想法 - 或者当然,关于如何解决的想法!


细节:

通过 USB 运行 ADB,我可以非常快速地下载然后拉取文件,这表明我的互联网连接和 USB 连接是“快速”的(>1MB/s)。例如,我可以在 90 秒内抓取一个 100MB 的文件:

$ cat getfile.sh
R=tempdl
adb shell "curl -k $1 > /sdcard/$R"
adb pull /sdcard/$R
adb shell rm /sdcard/$R   

$ ./getfile.sh https://dl.google.com/android/android-sdk_r22.6.2-linux.tgz
Run Code Online (Sandbox Code Playgroud)

这在 90 秒内完成。

但是,如果我尝试使用 adb 端口转发,例如:

adb forward tcp:8000 tcp:8000

... 结合 Android 上的端口转发应用程序(由您选择)来抓取相同的文件,然后我从未看到超过120kB/秒的速度。

当我的互联网连接速度很快并且我的 USB 连接速度很快时,我很想了解为什么端口转发可能会如此缓慢。当然还有关于如何缓解的任何想法。

usb android portforwarding adb

5
推荐指数
0
解决办法
1166
查看次数

使用Peekable实现"谨慎"的take_while

我想使用Peekable作为一个新的基础cautious_take_while,其作用类似于操作 take_while距离IteratorExt,但不消耗第一个失败的项目.(还有一个问题是这是否是一个好主意,以及是否有更好的方法来实现Rust的这一目标 - 我很乐意在这个方向上提示,但主要是我试图了解我的代码在哪里断).

我试图启用的API基本上是:

let mut chars = "abcdefg.".chars().peekable();

let abc : String = chars.by_ref().cautious_take_while(|&x| x != 'd');
let defg : String = chars.by_ref().cautious_take_while(|&x| x != '.');

// yielding (abc = "abc", defg = "defg")
Run Code Online (Sandbox Code Playgroud)

我在这里创造了一个MCVE,但是我得到了:

:10:5:10:19错误:无法移出借来的内容:10 chars.by_ref().cautious_take_while(|&x | x!='.');

据我所知,TakeWhile在我的函数签名方面,我遵循与Rust自己相同的模式,但我看到了与借用检查器不同的不同行为.有人可以指出我做错了吗?

iterator traits rust borrow-checker

5
推荐指数
1
解决办法
362
查看次数

如何使用babel CLI编译文件

我正在尝试es6用babel CLI 编译一个简单的文件

鉴于以下细节:出了什么问题?

$ node --version
v5.0.0

$ npm --version
3.3.6

$ npm init
$ npm install --save-dev babel-cli

$ echo -e 'import url from "url"\nconsole.log(`2+2=${2+2}`)' > script.js

$ ./node_modules/.bin/babel  script.js 
import url from "url";
console.log(`2+2=${ 2 + 2 }`);
Run Code Online (Sandbox Code Playgroud)

换句话说:我放入ES6然后我拿出ES6(尽管间距略有不同,并添加了分号).我期待看到转换为需求的导入,并看到我的后退滴答消失.

那就是:我想要ES5了.

我需要做些什么不同的事情?

node.js transpiler babeljs

5
推荐指数
1
解决办法
5755
查看次数

Grails如何为Singleton控制器提供`params`?(Grails内部)

如果我通过以下方式将Grails控制器设为单例:

static scope = "singleton"
Run Code Online (Sandbox Code Playgroud)

... Grails如何将params变量暴露给我的控制器的操作,其中params特定于请求?

我会理解是否params作为变量传递给我的动作方法,但这里params只是可用的和范围内的(并且对于同时请求是不同的,尽管事实上我的控制器只有一个实例).

这是如何在引擎盖下实施的?

grails groovy singleton metaprogramming

4
推荐指数
1
解决办法
450
查看次数

对于GradleBuild任务,我可以传递所有属性吗?

我正在执行一个GradleBuild任务,我想维护当前脚本已经给出的所有属性.换句话说,我想打包"这些startparameters"并将它们传递给我正在调用的构建.

有没有办法干净利落地做到这一点?

build gradle build.gradle

4
推荐指数
1
解决办法
1189
查看次数

为什么编译器告诉我考虑使用`let`绑定"?

我的错误是什么以及如何解决?

fn get_m() -> Vec<i8> {
    vec![1, 2, 3]
}

fn main() {
    let mut vals = get_m().iter().peekable();
    println!("Saw a {:?}", vals.peek());
}
Run Code Online (Sandbox Code Playgroud)

(游乐场)

编译器的错误表明"考虑使用let绑定" - 但我已经:

error[E0597]: borrowed value does not live long enough
 --> src/main.rs:6:45
  |
6 |     let mut vals = get_m().iter().peekable();
  |                    -------                  ^ temporary value dropped here while still borrowed
  |                    |
  |                    temporary value created here
7 |     println!("Saw a {:?}", vals.peek());
8 | }
  | - temporary value needs …
Run Code Online (Sandbox Code Playgroud)

rust borrow-checker

4
推荐指数
2
解决办法
1235
查看次数

如何在elm 0.17中使用随机生成器和用户指定的种子?

在Elm 0.17中,我想运行一个依赖于随机数的程序,但我希望有一个用户指定的种子.这是为了在多个用户会话中获得可重现的结果:输入相同种子的用户应该看到相同的结果.

但我无法弄清楚如何影响内置函数的行为,如:

Random.list 10 (Random.int 0 100)
Run Code Online (Sandbox Code Playgroud)

通过上面的呼叫,我想在每次输入相同的种子时得到10个随机数的相同列表.但我根本无法弄清楚如何喂种子.我很感激任何帮助!

random elm

3
推荐指数
1
解决办法
562
查看次数

索引 postgresql 数组列以进行大于/小于比较?

我可以在 Postgresq 9.1 中索引数组列以支持:

select * from t where 100 < any(a) and 100 > any(a)

其中a是一个整数数组(其中的行具有一些值,例如{90,110},因此查询不会返回空。)


细节

create table t ( a integer[] )
insert into t values ('{90,110}'::integer[])
Run Code Online (Sandbox Code Playgroud)

运行explain analyze上面的查询会产生:

Seq Scan on t  (cost=0.00..1.07 rows=2 width=32) (actual time=0.009..0.009 rows=1 loops=1)
  Filter: ((100 < ANY (a)) AND (100 > ANY (a)))
Total runtime: 0.023 ms
Run Code Online (Sandbox Code Playgroud)

背景

以下问题描述了一种方法,但似乎不适用于非固定长度数组:

PostgreSQL 可以索引数组列吗?

Postgres文档描述了内置的 GIN 运算符,但它们似乎不支持大于/小于操作:

例如,PostgreSQL 的标准发行版包含一维数组的 GIN 运算符类,它支持使用这些运算符的索引查询:<@、@>、=、&&

postgresql indexing

2
推荐指数
1
解决办法
3258
查看次数

匹配返回迭代器的臂?

我有一些代码尝试运行匹配,其中每个分支都可以返回不同的类型,但所有这些类型都实现了Iterator<Item=usize>.

let found: Iterator<Item = usize> = match requirements {
    Requirements::A => MatchingAs { ainternals: [] },
    Requirements::B => MatchingBs { binternals: [] },
    Requirements::C => MatchingCs { cinternals: [] },
};

return found.any(|m| m == 1)
Run Code Online (Sandbox Code Playgroud)

... 哪里MatchingAsMatchingBs, 以及MatchingCs所有impl std::iter::Iterator<Item = usize>

Iterator因为尺寸不合适而碰壁:

let found: Iterator<Item = usize> = match requirements {
    Requirements::A => MatchingAs { ainternals: [] },
    Requirements::B => MatchingBs { binternals: [] }, …
Run Code Online (Sandbox Code Playgroud)

traits matching rust trait-objects

2
推荐指数
1
解决办法
621
查看次数

索引jsonb以进行字段的数字比较

我已经定义了一个简单的表

create table resources (id serial primary key, fields jsonb);
Run Code Online (Sandbox Code Playgroud)

它包含带键的数据(从大集中绘制)和1到100之间的值,如:

   id   |    fields                                                                                                 
--------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      1 | {"tex": 23, "blair": 46, "cubic": 50, "raider": 57, "retard": 53, "hoariest": 78, "suturing": 25, "apostolic": 22, "unloosing": 37, "flagellated": 85}
      2 | {"egoist": 75, "poshest": 0, "annually": 19, "baptists": 29, "bicepses": 10, "eugenics": 9, "idolizes": 8, "spengler": 60, "scuppering": 13, "cliffhangers": 37}
      3 | {"entails": 27, "hideout": 22, "horsing": 98, "abortions": 88, "microsoft": 37, "spectrums": 26, "dilettante": 52, "ringmaster": 84, "floweriness": 72, "vivekananda": …
Run Code Online (Sandbox Code Playgroud)

postgresql json jsonb postgresql-9.4

1
推荐指数
1
解决办法
1368
查看次数