2016-12-24 3 views
1

これは以下のコードです。最初の.net gadgeteerウェブイベントが発砲しない。 Webサーバーからの応答がない

using System; 
using System.Collections; 
using System.Threading; 
using Microsoft.SPOT; 
using Microsoft.SPOT.Presentation; 
using Microsoft.SPOT.Presentation.Controls; 
using Microsoft.SPOT.Presentation.Media; 
using Microsoft.SPOT.Presentation.Shapes; 
using Microsoft.SPOT.Touch; 

using Gadgeteer.Networking; 
using GT = Gadgeteer; 
using GTM = Gadgeteer.Modules; 
using Microsoft.SPOT.Net.NetworkInformation; 


namespace WebSer 
{ 
    public partial class Program 
    { 
     GT.Networking.WebEvent sayHello; 
     GT.Timer t; 
     void ProgramStarted() 
     { 
      t = new GT.Timer(1000); 
      t.Tick += new GT.Timer.TickEventHandler(t_Tick); 
      t.Start(); 
     } 

     private void t_Tick(GT.Timer timer) 
     { 
      t.Stop(); 
      if (!wifi.NetworkInterface.Opened) 
       wifi.NetworkInterface.Open(); 
      if (!wifi.NetworkInterface.IsDhcpEnabled) 
       wifi.NetworkInterface.EnableDhcp(); 
      wifi.NetworkInterface.NetworkInterface.EnableDynamicDns(); 

      NetworkChange.NetworkAddressChanged += NetworkChange_NetworkAddressChanged; 
      NetworkChange.NetworkAvailabilityChanged += NetworkChange_NetworkAvailabilityChanged; 
      wifi.NetworkInterface.Join("Connectify-test", "abdi1990"); 
      while (true) 
      { 
       string ipaddress = wifi.NetworkInterface.IPAddress; 
       Debug.Print(ipaddress); 

       if (ipaddress != "0.0.0.0") break; 

       Thread.Sleep(1000); 
      } 
      Thread.Sleep(-1); 
     } 

     private void NetworkChange_NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e) 
     { 
      Debug.Print("CHANGED"); 

     } 

     private void NetworkChange_NetworkAddressChanged(object sender, EventArgs e) 
     { 
      Debug.Print(wifi.NetworkInterface.IPAddress+"from event"); 
      if (wifi.NetworkInterface.IPAddress != "0.0.0.0") 
      { 
       WebServer.StartLocalServer(wifi.NetworkInterface.IPAddress, 80); 
       sayHello = WebServer.SetupWebEvent("hello"); 
       sayHello.WebEventReceived+=sayHello_WebEventReceived; 
       // wifi_RS21.Interface.Disconnect(); 
      } 
     } 

     private void sayHello_WebEventReceived(string path, WebServer.HttpMethod method, Responder responder) 
     { 
      string content = "<html><body><h1>Hello World!!</h1></body></html>"; 
      byte[] bytes = new System.Text.UTF8Encoding().GetBytes(content); 
      responder.Respond(bytes, "text/html"); 
     } 


    } 
} 

出力、それが接続されている。この

The thread '<No Name>' (0x2) has exited with code 0 (0x0). 
Using mainboard GHI Electronics FEZ Spider version 1.0 
The thread '<No Name>' (0x3) has exited with code 0 (0x0). 
0.0.0.0 
0.0.0.0 
CHANGED 
192.168.137.102from event 
Web server started at http://192.168.137.102:80/ 
192.168.137.102 

である私が192.168.137.102:80に行くとき、それは最後 に2つの追加の行を出力し、適切にデフォルトのサイトを表示します。また、私は絵として添付されている

The thread '<No Name>' (0x2) has exited with code 0 (0x0). 
Using mainboard GHI Electronics FEZ Spider version 1.0 
The thread '<No Name>' (0x3) has exited with code 0 (0x0). 
0.0.0.0 
0.0.0.0 
CHANGED 
192.168.137.102from event 
Web server started at http://192.168.137.102:80/ 
192.168.137.102 
The thread '<No Name>' (0x7) has exited with code 0 (0x0). 
The thread '<No Name>' (0x8) has exited with code 0 (0x0). 

Default site

その後、何も192.168.137.102:80/hello~~Vないために行くたまたまブラウザは下

The thread '<No Name>' (0x2) has exited with code 0 (0x0). 
Using mainboard GHI Electronics FEZ Spider version 1.0 
The thread '<No Name>' (0x3) has exited with code 0 (0x0). 
0.0.0.0 
0.0.0.0 
CHANGED 
192.168.137.102from event 
Web server started at http://192.168.137.102:80/ 
192.168.137.102 
The thread '<No Name>' (0x7) has exited with code 0 (0x0). 
The thread '<No Name>' (0x8) has exited with code 0 (0x0). 
The thread '<No Name>' (0x9) has exited with code 0 (0x0). 
The thread '<No Name>' (0xa) has exited with code 0 (0x0). 
で読み込みと出力2以上のものを保持している場合

デフォルトの192.168.137.102:80が動作しますが、192.168.137.102:80/helloでは動作しません。 私は助けが必要です。

答えて

関連する問題