From 415e87b7876377d4bc4e505d0cf9d918ff353948 Mon Sep 17 00:00:00 2001 From: Yorick Rommers Date: Thu, 29 Oct 2015 20:37:36 +0100 Subject: [PATCH] API getSongURLbyid working --- MusicPlayer/MusicPlayer/APIHandler.cs | 17 +++++++++++++++-- MusicPlayer/MusicPlayer/MainForm.cs | 1 - MusicPlayer/MusicPlayer/MusicPlayer.csproj | 11 ++++++++--- MusicPlayer/MusicPlayer/NetworkHandler.cs | 11 ++++++----- MusicPlayer/MusicPlayer/Program.cs | 6 +++--- 5 files changed, 32 insertions(+), 14 deletions(-) diff --git a/MusicPlayer/MusicPlayer/APIHandler.cs b/MusicPlayer/MusicPlayer/APIHandler.cs index 92583ea..c3d6f65 100644 --- a/MusicPlayer/MusicPlayer/APIHandler.cs +++ b/MusicPlayer/MusicPlayer/APIHandler.cs @@ -4,16 +4,29 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using MusicPlayer; +using Newtonsoft.Json.Linq; namespace MusicPlayer { internal class APIHandler { - public APIHandler() - { + private NetworkHandler nw; + public APIHandler(NetworkHandler nw) + { + this.nw = nw; } + public string GetSongURLByID(string id) + { + JObject o = nw.SendString("getsongbyid?id=" + id); + if (o["result"].ToString() == "OK") { + return o["songurl"].ToString(); + } + return o["errormsg"].ToString(); + + } + public List GetArtists() { return null; diff --git a/MusicPlayer/MusicPlayer/MainForm.cs b/MusicPlayer/MusicPlayer/MainForm.cs index 522afb0..8c3f38b 100644 --- a/MusicPlayer/MusicPlayer/MainForm.cs +++ b/MusicPlayer/MusicPlayer/MainForm.cs @@ -18,7 +18,6 @@ namespace MusicPlayer public MainForm() { InitializeComponent(); -// nw.SendString("GET / HTTP/1.1"); } diff --git a/MusicPlayer/MusicPlayer/MusicPlayer.csproj b/MusicPlayer/MusicPlayer/MusicPlayer.csproj index bd6a732..1fc6d1b 100644 --- a/MusicPlayer/MusicPlayer/MusicPlayer.csproj +++ b/MusicPlayer/MusicPlayer/MusicPlayer.csproj @@ -1,4 +1,4 @@ - + @@ -33,6 +33,10 @@ 4 + + ..\packages\Newtonsoft.Json.7.0.1\lib\net45\Newtonsoft.Json.dll + True + @@ -46,7 +50,7 @@ - + Form @@ -74,6 +78,7 @@ True Resources.resx + SettingsSingleFileGenerator Settings.Designer.cs @@ -95,4 +100,4 @@ --> - + \ No newline at end of file diff --git a/MusicPlayer/MusicPlayer/NetworkHandler.cs b/MusicPlayer/MusicPlayer/NetworkHandler.cs index 9ea31a4..dc10bd5 100644 --- a/MusicPlayer/MusicPlayer/NetworkHandler.cs +++ b/MusicPlayer/MusicPlayer/NetworkHandler.cs @@ -4,6 +4,8 @@ using System.Net.Sockets; using System.Threading; using System.Net; using System.IO; +using Newtonsoft.Json.Linq; + namespace MusicPlayer { @@ -11,15 +13,13 @@ namespace MusicPlayer { private int port = 8585; private string ip; - private APIHandler api; - public NetworkHandler(string ip, APIHandler apihandler) + public NetworkHandler(string ip) { this.ip = ip; - this.api = apihandler; } - public void SendString(string m) + public JObject SendString(string m) { HttpWebRequest server = (HttpWebRequest)WebRequest.Create(ip+":"+port+"/"+m); server.KeepAlive = false; @@ -35,10 +35,11 @@ namespace MusicPlayer data +=outputData; count = streamRead.Read(readBuff, 0, 256); } - System.Console.WriteLine(data); + JObject o = JObject.Parse(data); respond.Close(); streamResponse.Close(); streamRead.Close(); + return o; } } } diff --git a/MusicPlayer/MusicPlayer/Program.cs b/MusicPlayer/MusicPlayer/Program.cs index e5e7fd4..b438603 100644 --- a/MusicPlayer/MusicPlayer/Program.cs +++ b/MusicPlayer/MusicPlayer/Program.cs @@ -14,9 +14,9 @@ namespace MusicPlayer [STAThread] static void Main() { - APIHandler api = new APIHandler(); - NetworkHandler nw = new NetworkHandler("http://www.imegumii.nl", api); - nw.SendString("getsongbyid?id=102"); + NetworkHandler nw = new NetworkHandler("http://www.imegumii.nl"); + APIHandler api = new APIHandler(nw); + Console.WriteLine(api.GetSongURLByID("102")); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MainForm());