首页 > 解决方案 > 使用 Resharp 访问本地服务器

问题描述

我正在实施一个searchView,但在此之前,我想成功地访问我的本地 rest api(使用 asp.net 核心编写)。我发现了一个名为RestSharp的包,它似乎使使用 rest api 变得非常简单。现在我被困在从我的 Xamarin.Android 应用程序访问我的 api 上。我正在使用一个使用谷歌地图的片段,在OnCreateView我调用的生命周期方法addData中,它应该可以访问我的 api:

public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            // Use this to return your custom view for this Fragment
            //base.OnCreateView(inflater, container, savedInstanceState);
            View view = inflater.Inflate(Resource.Layout.activity_main, container, false);
            // Initialize Views
            _listView = view.FindViewById<ListView>(Resource.Id.searchList);
            _seachView = view.FindViewById<SearchView>(Resource.Id.searchView);
            addData();
            return view;
        }
        public void addData() {
            var client = new RestClient("http://10.0.2.2:44392");
            var request = new RestRequest("/api/Ruta", DataFormat.Json);
            var response = client.Get(request);
            Console.WriteLine(response.Content);
        }
        // More code
}

根据如何从我的 android 设备访问我的本地 REST api?, 10.0.2.2:PORT 可以用来访问我的机器localhost:PORT。但这似乎并没有在其余 api 的解决方案中触发断点(已经用 Postman 测试过)。

标签: androidasp.net-coreandroid-fragmentsxamarin.androidrestsharp

解决方案


通过在“调试”->“Web 服务器设置”下删除服务器属性上的“启用 SSL”来解决。并且 10.0.0.2 应该用于从 Android 应用程序访问本地服务器,有关 IOS 和使用 https 使用 api 的更多详细信息,请在此处查看:https ://docs.microsoft.com/en-us/xamarin/cross-platform /deploy-test/connect-to-local-web-services


推荐阅读