我有一些代码使用缓冲区移动字节memmove()
.缓冲区由多个线程访问.我得到一个非常奇怪的行为; 有时缓冲区不应该是它应该是什么,我在想是否memmove()
和/和malloc()
线程安全.我在iOS上工作(如果这是依赖于平台的).
我正在使用基于spring注释的控制器.我希望我的URL /用户/消息映射到某个控制器a,如果查询参数标签存在,否则存在于某个不同的控制器b.这是必需的,因为当存在参数标记时,可以存在一些更多参数以及我想在不同控制器中处理的参数以保持实现清洁.在春天有任何方法可以做到这一点.这个问题还有其他优雅的解决方案吗?
我正在使用Hammock框架从Silverlight应用程序到Rest服务进行异步服务调用.在'完成'回调中,我正在更新一个ObservableCollection,它绑定到视图上的组合框.
"OnPropertyChanged"事件处理程序中抛出了"无效的跨线程访问"异常.
这是因为Hammock没有在UI线程上执行回调吗?如果没有,为什么不呢?这似乎是框架应该处理的功能.我错过了什么吗?我确定不想在每个完成的处理程序中自己处理UI线程的调用.
public void LoadMyData()
{
var request = new RestRequest();
request.Path = "MyRestUrlText";
var callback = new RestCallback(
(restRequest, restResponse, userState) =>
{
var visibleData = new ObservableCollection<MyDataType>();
var myData = JsonConvert.DeserializeObject<MyDataType[]> restResponse.Content);
foreach (var item in myData)
visibleData .Add(item);
this.MyBoundCollection = visibleData;
OnPropertyChanged("MyBoundCollection");
});
var asyncResult = _restClient.BeginRequest(request, callback);
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我目前正在使用Django 1.3和Django-Celery应用程序开展一个项目.顺便说一句,这非常棒,我建议任何不熟悉芹菜的人都会检查出来.
我对管理页面功能有一个具体问题:
我们正在使用celery任务向第三方合作伙伴发出RESTful API调用.这些调用实际上是由用户操作启动的,因此您可以看到芹菜任务在这种情况下如何非常有用.
我们有一个用户故事,讲述管理员如果由于某种原因失败,应该如何能够重新发送回调.现在,如果回调因标准HTTP响应失败而失败,我们将使用芹菜重试机制以不同的间隔自动重新发送它们.但是,这些回调可能是成千上万的合作伙伴之一(是的,很多),而且并非所有合作伙伴都会使用标准的HTTP响应代码作为失败响应.
长话短说,我无法在网上找到任何可以通过管理界面重新发送芹菜任务的内容.我希望有人可以对此有所了解.这似乎是一个非常明显的功能,如果没有这样的功能,我相信它有充分的理由.如果没有办法,如果有人能解释原因,我会喜欢它.只是好奇了解芹菜的内部运作.
感谢大家!对不起我的啰嗦,有时我倾向于絮絮叨叨.
我发现CodeIgniter表单验证用load-> view方法显示错误消息,如果使用"redirect",将丢失字段错误消息.
目前我使用一个函数来显示表单页面,另一个函数来处理表单发布.
class Users extends CI_Controller { function __construct() { parent::__construct(); } public function sign_up() { $this->load->view('users/sign_up'); } public function do_sign_up(){ $this->form_validation->set_rules('user_login', 'User Name', 'trim|required|is_unique[users.login]'); $this->form_validation->set_rules('user_email', 'Email', 'trim|required|valid_email|is_unique[users.email]'); if ($this->form_validation->run() == FALSE) { $this->load->view('users/sign_up'); }else { // save post user data to users table redirect_to("users/sign_in"); }
当表单验证失败时,浏览器中的url将更改为"/ users/do_sign_up",我想在sign_up页面中保留相同的URL.
在表单验证失败时使用重定向("users/sign_up")方法将保持相同的URL,但验证错误消息将丢失.
在Rails中,我不能使用如下配置的路由:
get "users/sign_up" => "users#signup" post "users/sign_up" => "users#do_signup"
我已经制作了一个小gwt应用程序并将其发布,但今天我发现了一个严重的问题.我知道相同的原始政策问题,所以我把我的gwt应用程序和休息json应用程序放在同一台服务器上.但显然浏览器并不认为http://www.xyz.com和http://xyz.com是相同的来源,因此当用户登陆www.xyz.com时,他无法从http获取数据:/ /xyz.com.
这是消息:
XMLHttpRequest cannot load http://xyz.com/backend/...
Origin http://www.xyz.com is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)
处理这个问题的最佳方法是什么?我用Google搜索并首先找到了.htaccess解决方案,它对tomcat不起作用.我最终使用了一个空的着陆页index.html,只重定向到没有www的url.这不是最好的解决方案,因为有人仍然可以输入带有www的URL,而不会将索引页面编入索引,因此它不会被重定向.
任何帮助将不胜感激.
我有一个使用基本身份验证的ASP MVC3 restful服务.搜索堆栈溢出后,我创建了以下代码.
public class BasicAuthentication : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var req = filterContext.HttpContext.Request;
if (String.IsNullOrEmpty(req.Headers["Authorization"]))
{
filterContext.Result = new HttpNotFoundResult();
}
else
{
var credentials = System.Text.ASCIIEncoding.ASCII
.GetString(Convert.FromBase64String(req.Headers["Authorization"].Substring(6)))
.Split(':');
var user = new { Name = credentials[0], Password = credentials[1] };
if(!(user.Name == "username" && user.Password == "passwords"))
{
filterContext.Result = new HttpNotFoundResult();
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
1)ActionFilterAttribute是最好的方法吗?
2)设置filterContext.Result是否正确拒绝访问控制器方法?
3)有什么我做错了吗?
谢谢.
-缺口
我正在尝试访问RESTful服务,在Java上创建并使用jQuery在Jersey的帮助下部署.
如果我使用浏览器访问它,我会得到结果,但是从jQuery,我收到一个错误,在页面上看不到任何结果.
带有脚本的页面在本地Apache服务器上托管,服务在同一台机器上使用Jersey/Grizzly单独运行.
我可以看到,服务发送的响应,它有200码,但我一直从阿贾克斯得到错误,没有任何细节,任何建议,有什么不好?
服务:
@Path("/helloworld")
Run Code Online (Sandbox Code Playgroud)
公共类HelloWorldResource {
@GET
@Produces
public String test(){
System.out.println("Sending response");
return "test";
}
Run Code Online (Sandbox Code Playgroud)
}
主要:
public static void main(String[] args) throws IOException {
final String baseUri = "http://localhost:9998/";
final Map<String, String> initParams = new HashMap<String, String>();
initParams.put("com.sun.jersey.config.property.packages",
"resources");
System.out.println("Starting grizly");
SelectorThread threadSelector = GrizzlyWebContainerFactory.create(baseUri, initParams);
System.out.println(String.format(
"Jersey app started with WADL available at %sapplication.wadl\n"
+ "Try out %shelloworld\nHit enter to stop it...", baseUri, baseUri));
System.in.read();
threadSelector.stopEndpoint();
System.exit(0);
}
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var serviceAddress = "http://192.168.1.2:9998/helloworld";
function loadDeviceData(){ …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Tiles和REST插件运行我的Struts2项目,但我无法让它工作.
我已经查看了两者的文档,我认为我做得对.这是我的文件:
web.xml中
<?xml version="1.0" encoding="UTF-8"?>
<web-app metadata-complete="true" version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- listeners -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>
</listener>
<!-- context params -->
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name>
<param-value>/WEB-INF/tiles-tradesman.xml</param-value>
</context-param>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:spring-tradesman.xml</param-value>
</context-param>
<!-- filters -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<!-- filter mappings -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)
在struts.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<!-- RESTful plugin setup -->
<constant name="struts.mapper.class" value="rest" />
<constant name="struts.convention.action.suffix" …
Run Code Online (Sandbox Code Playgroud) 我对此有点困惑.Titanium正在吹嘘能够使用CSS进行样式,使用javascript编程并使用HTML5创建,同时使最终产品成为平台的原生.这怎么可能?如果我用JS/HTML/CSS编写,那么它们不会在浏览器中运行吗?让他们非原生?