我想手动执行setTimout所做的事情,没有超时.
setTimeout(function,0,args);
Run Code Online (Sandbox Code Playgroud)
只需调用一个函数并传递一个参数数组,而不知道或关心有多少参数.
基本上我想通过另一个函数代理函数调用.
我的术语很糟糕,抱歉.
我们的环境需要使用出站代理来进行异地服务.通常这不是问题.在这种情况下使用Twilio,返回的额外标头会破坏客户端.
传出标题:
POST /2010-04-01/Accounts/FOO/SMS/Messages.json HTTP/1.1
Authorization: Basic FOO==
User-Agent: twilio-php/3.10.0
Host: api.twilio.com
Accept: */*
Accept-Charset: utf-8
Content-Type: application/x-www-form-urlencoded
Content-Length: 108
Run Code Online (Sandbox Code Playgroud)
响应标题:
HTTP/1.0 200 Connection established
HTTP/1.1 201 Created
Server: nginx
Date: Thu, 06 Jun 2013 14:39:24 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 551
Connection: close
X-Powered-By: PHP/5.3.11
Run Code Online (Sandbox Code Playgroud)
我只能假设代理正在添加额外的HTTP标头.
Twilio客户端会检查:
list($head, $body) = ($parts[0] == 'HTTP/1.1 100 Continue')
Run Code Online (Sandbox Code Playgroud)
据我了解,有些时候或版本的curl会在请求中自动添加Expect标头,而HTTP 100将在响应中返回,但在这种情况下它不是,并且响应是200 Connection建立.为什么值得添加一个空的Expect:或Expect:培根没有改变结果.
我真的不想在这里过多地破解Twilio客户端,我特别想避免只添加一个|| $ parts [0] =='HTTP/1.0 200建立连接',因为它看起来很混乱.
是否可以发送请求标头来抑制/隐藏额外的标头?或者,我没有看到一个卷曲选项忽略它?
出站代理是Linux/Squid
当我的地图活动被调用时,我在onCreate中调用addUserMapPoint.此函数包含两个实例,我尝试使用myOverlay.getMyLocation获取位置信息.在此活动的初始加载时,第一次尝试的结果返回一个空的GeoPoint,并在主UI线程完成位于myOverlay.runOnFirstFix的监听器线程中的第二次尝试(新的Runnable()...在一秒后调用并且确实包含一个包含lat和lon的GeoPoint.这个监听器函数内的调用看起来似乎把点放在地图上,而mapController.animateTo(gp)行确实将地图移动到我的位置.我的应用程序有一个刷新按钮,当clicked再次触发此活动.我需要lat和lon才能从另一个服务获取位置数据.刷新后,第二次通过map活动代码我期待第一次调用myOverlay.getMyLocation()现在将是能够获得GeoPoint,但它仍然是null.
如果我不能通过第一次调用myOverlay.getMyLocation来获取GeoPoint,那么如何从myOverlay.runOnFirstFix(new Runnable()...线程中找到的第二个调用中传递lat和lon值.你会注意到我一直在尝试将lat和lon添加到MyApp,它是辅助bean类,但是即使在刷新之后,此类中的lat和lon也为null.如果我在addUserMapPoint函数中手动设置lat和lon第一次活动访问这些值是保留的.我猜这是因为它是在主UI线程上设置的.
public class MapActivity extends com.google.android.maps.MapActivity {
private MapView mapView = null;
private MapController mapController = null;
private MyLocationOverlay myOverlay = null;
public static MyApp app;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
app = (MyApp) getApplicationContext();
mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
mapController = mapView.getController();
List<Overlay> mapOverlays = mapView.getOverlays();
mapOverlays.clear();
addUserMapPoint(mapView);
if (!app.isLocServOff()) {
//map other points – service call to get items from our service near lat and lon
addOtherMapPoints(mapOverlays);
} else {
Toast.makeText(app.getApplicationContext(),"Current location could …Run Code Online (Sandbox Code Playgroud) android mapactivity mylocationoverlay android-mapview geopoints
android ×1
curl ×1
geopoints ×1
http-headers ×1
javascript ×1
mapactivity ×1
php ×1
proxy ×1
twilio ×1