MVC 3 GET Webservice and Response
===

I'm attempting to build a GET webservice that would from website 1 initiate a GET request...sending that request to website 2 and website two would respond by sending a list of objects. I using Json.net to serialize and deserialize the List of objects.

I've put together a POST webservice with the assistance of this question.. http://stackoverflow.com/questions/11568453/webservice-asp-net-mvc-3-send-and-recieve

But I've been unsuccessful so far at adapting that example for my new requirement.

Here is what I have so far from website 1..

        public static List<ScientificFocusArea> ScientificFocusAreas()
        {
            string apiURL = "http://localhost:50328/Api/GetAPI";

            //Make the post
            ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;

            //var bytes = Encoding.Default.GetBytes(body);
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(apiURL);
            Stream stream = null;
            try
            {
                request.KeepAlive = false;
                request.ContentType = "application/x-www-form-urlencoded";
                request.Timeout = -1;
                request.Method = "GET";
            }
            finally
            {
                if (stream != null)
                {
                    stream.Flush();
                    stream.Close();
                }
            }

            List<ScientificFocusArea> listSFA = WebService.GetResponse_ScientificFocusArea(request);

            return listSFA;
        }

        public static List<ScientificFocusArea> GetResponse_ScientificFocusArea(HttpWebRequest request)
        {
            List<ScientificFocusArea> listSFA = new List<ScientificFocusArea>();

            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {

                using (Stream responseStream = response.GetResponseStream())
                {
                    if (response.StatusCode != HttpStatusCode.OK && response.StatusCode != HttpStatusCode.Created)
                    {
                        throw new HttpException((int)response.StatusCode, response.StatusDescription);
                    }

                    var end = string.Empty;
                    using (StreamReader reader = new StreamReader(responseStream))
                    {
                        end = reader.ReadToEnd();
                        reader.Close();

                        listSFA = JsonConvert.DeserializeObject<List<ScientificFocusArea>>(end);
                    }

                    response.Close();
                }
            }

            return listSFA;
        }

Then on the website 2...

    public class GetAPIController : Controller
    {
        //
        // GET: /Api/GetAPI/

        [AcceptVerbs(HttpVerbs.Get)]
        public ActionResult GetScientificFocusAreas()
        {
            //Get list of SFAs
            List<ScientificFocusArea> ListSFA = CreateList.ScientificFocusArea();

            string json = JsonConvert.SerializeObject(ListSFA, Formatting.Indented);

            //Send the the seralized object.
            return Json(json);

        }

    }

Also, on website 2, I've registered this route for the incoming request...

            context.MapRoute(
    "GetScientificFocusAreas",
    "Api/GetAPI/",
    new
    {
        controller = "GetAPI",
        action = "GetScientificFocusAreas",
        id = UrlParameter.Optional
    }
);

I'm currently getting the error.. he remote server returned an error: (404) Not Found.

Any help would me greatly appreciated.