我正在构建一个简单的http POST请求.在这篇文章中我需要添加一些项目,其中一项是在前一个请求中被拉下来的大型视图状态字符串.我注意到的是,原始请求需要转义所有特殊字符(如下所示)
_ EVENTTARGET =& _ EVENTARGUMENT =& __ VIEWSTATE = %% 3D&
但我不确定我是否在目标c中做到了这一点.目前,当我NSLog出视口状态字符串时,它仍然显示/和=字符.
任何人都可以证实我在正确的道路上吗?如果不是,我将如何转换viewstate中的特殊字符(即 - 而不是=我应该得到%3D)?
- (void)doHttpPostWithViewState:(NSString *)viewstate
{
responseData = [[NSMutableData data] retain];
NSURL *url = [NSURL URLWithString:@"https://localhost/Login"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
NSString* theBodyString = [[NSString alloc] initWithFormat:@"__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%@",viewstate];
NSData *requestData = [theBodyString dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary * headers = [NSHTTPCookie requestHeaderFieldsWithCookies:cookies];
[request setHTTPMethod:@"POST"];
[request setValue:@"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:[NSString stringWithFormat:@"%d", [requestData length]] forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody: requestData];
[request setAllHTTPHeaderFields:headers];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
}
Run Code Online (Sandbox Code Playgroud)
最后,为了本地调试目的 …
验证我的表单字段不为空时遇到问题.我以为我过去曾使用过isset但我在下面遇到问题.我知道我可以用==""做到这一点,但想以这种方式弄明白.
if(isset($_POST['submit'])){
$error= false;
if (isset($_POST['name'])){$name=$_POST['name'];}else{$error=true; $error_message="enter a name"; echo "no name";};
if(!$error){
//SUBMIT TO DATABASE
}else{ echo $error_message;
}
}
Run Code Online (Sandbox Code Playgroud)
但我不断收到error_message未设置的错误.
在我有一张地图并希望线程安全地公开其键集的情况下,这一定是相当普遍的情况:
public MyClass {
Map<String,String> map = // ...
public final Set<String> keys() {
// returns key set
}
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我的“地图”不是线程安全的,这是不安全的:
public final Set<String> keys() {
return map.keySet();
}
Run Code Online (Sandbox Code Playgroud)
两者都不是:
public final Set<String> keys() {
return Collections.unmodifiableSet(map.keySet());
}
Run Code Online (Sandbox Code Playgroud)
所以我需要创建一个副本,例如:
public final Set<String> keys() {
return new HashSet(map.keySet());
}
Run Code Online (Sandbox Code Playgroud)
但是,这似乎也不安全,因为该构造函数遍历参数的元素并将它们添加()。因此,在进行此复制时,可能会发生 ConcurrentModificationException。
那么:
public final Set<String> keys() {
synchronized(map) {
return new HashSet(map.keySet());
}
}
Run Code Online (Sandbox Code Playgroud)
似乎是解决方案。这看起来对吗?
我试图获得一个简单的功能,我有一个列表列表,我想对数据( - ,+,*,/)做一些数学运算.我希望该方法采用以下任何类型(Int,Float,Double).
这是我尝试过的:
def doSomething[T](data: List[T]){
data reduceLeft(_ / _)
}
Run Code Online (Sandbox Code Playgroud)
显示以下内容:value /不是类型参数T的成员.
如何让它适用于AnyVal类型(Double,Int,Float)?
更新我尝试在以下代码中实现建议:
def dot[T](l: List[List[T]])(implicit num: Numeric[T]) =
{
for (row <- data)
yield for(col <- l)
yield row zip col map {a => num.times(a._1 , a._2)} reduceLeft (_+_)
Run Code Online (Sandbox Code Playgroud)
并得到错误:类型不匹配; 发现:a._1.type(底层类型为T)需要:T
有没有办法解决这个问题?
我正在使用PostgreSQL和PostGIS.我的所有数据都已连接到十进制纬度/长度(即-87.34554 33.12321),但要使用PostGIS,我需要将其转换为某种类型的SRID.我的大多数查询都在寻找特定半径范围内的数据.
我应该使用什么SRID?我已经使用SRID 4269创建了一个几何列.在此示例中: 作者正在将SRID 4269转换为SRID 32661的链接文本.我对如何以及何时使用这些SRID感到非常困惑.任何关于这个主题的精简版都会真正受到赞赏
我想在每次击中网址/代码时运行脚本(code.rb).
我该如何运行脚本?
require 'sinatra'
get '/' do
#run the script
end
Run Code Online (Sandbox Code Playgroud) 任何人都可以推荐一个好的独立类(不是PEAR的一部分)或其他方法让我从大约1,400个MP3文件中获取一些基本元数据?
我发现了类似的问题,但没有一个答案清楚,轻松地显示如何使用jQuery和JSON获取vimeo视频的缩略图.如果有人能提供帮助那就太好了,这就是我所拥有的,但此刻并没有显示任何内容.
var vimeoVideoID = '17631561';
var videoCallback = 'showThumb';
$.getJSON('http://www.vimeo.com/api/v2/video/' + vimeoVideoID + '.json?callback=' + videoCallback,
function(data){
$(".thumbs").attr('src',data[0].thumbnail_large);
});
Run Code Online (Sandbox Code Playgroud)
提前致谢.
可能重复:
Ruby中包含和扩展有什么区别?
鉴于:
module my_module
def foo
...
end
end
Run Code Online (Sandbox Code Playgroud)
问题1
有什么区别:
class A
include my_module
end
Run Code Online (Sandbox Code Playgroud)
和
class A
extend my_module
end
Run Code Online (Sandbox Code Playgroud)
问题2
将foo被视为实例方法还是类方法?换句话说,这相当于:
class A
def foo
...
end
end
Run Code Online (Sandbox Code Playgroud)
或者:
class A
def self.foo
...
end
end
Run Code Online (Sandbox Code Playgroud)
?
如果字符串不存在,如何在文本后添加字符串?
我有一个包含以下几行的文本框:
name:username thumbnail:example.com message:hello
name:username message:hi
name:username message:hey
Run Code Online (Sandbox Code Playgroud)
我怎样才能添加thumbnail:example.com到name:username第二行和第三行而不是第一行?