我在NODJS中创建了一个简单的Web服务器。当连接到http://localhost:8888/
时,web浏览器即firfox将显示hellow world。但是enyon web服务onSuccess回调显示来自inResponse的空字符串。我创建了一个静态网页,enyo从我当地的hypache服务器上加载了它。为什么enyo总是从nodejs发送的东西中显示w null?
网络服务器
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
我写了一个简单的enyo程序,当你按下按钮它会做一个web服务并在一个警告框中显示结果
enyo.kind({
name: "MyApps.MainApp",
kind: enyo.VFlexBox,
// comment code to load in data gfrom service
components: [
{name: "getName", kind: "WebService",
onSuccess: "gotName",
onFailure: "gotNameFailure",
url: "http://localhost:8888/"
},
{kind: "PageHeader", content: "Enyo FeedReader"},
{name:"curValue", content:("Sample Text")},
{kind: "Button", caption: "Action", onclick: "btnClick"} ],
// functions go here
create: function()
{
// call the default creat then do our stuff
this.inherited(arguments);
this.$.getName.call();
},
// Show output of server,
gotName: function(inSender, inResponse) {
this.$.button.setCaption("Success");
alert(inResponse );
},
// go here if it cold not connect to server
gotNameFailure: function(inSender, inResponse) {
this.$.button.setCaption("Failure"); },
// call the server
btnClick: function() {
this.$.getName.call(); }
});
泰德
答案 0 :(得分:0)
您是否有理由编写自己的Web服务? enyo.WebService类已经可供您使用。
如果您真的需要自己的,我建议您在以下示例项目中查看服务的实现方式:https://github.com/palm/txjs-fortunecookie