android - 使用 Web API 连接 SQL Server 数据库和 Xamarin Android
问题描述
localhost
不工作,我现在正在使用 SQL Server 数据库,但我不知道在 localhost IP 中放入什么,我尝试10.0.2.2
了我的 ipv4 ip。它也不起作用。
HttpClient client = new HttpClient();
string url = $"https://localhost:xxxxx/api/Feedback?email={feedback.Email}&subject={feedback.Subject}&message={feedback.Message}";
例外
System.Net.WebException: 'Failed to connect to localhost/127.0.0.1:44330'
代码:
btnSend.Click += async delegate
{
Feedback feedback = new Feedback();
feedback.Email = edtEmail.Text;
feedback.Subject = edtSubject.Text;
feedback.Message = edtMessage.Text;
HttpClient client = new HttpClient();
string url = $"https://localhost:xxxxxx/api/Feedback?email={feedback.Email}&subject={feedback.Subject}&message={feedback.Message}";
var uri = new Uri(url);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response;
var json = JsonConvert.SerializeObject(feedback);
var content = new StringContent(json, Encoding.UTF8, "application/json");
response = await client.PostAsync(uri, content);
Clear();
if (response.StatusCode == System.Net.HttpStatusCode.Accepted)
{
Toast.MakeText(this, "Your Feedback is Saved ", ToastLength.Long).Show();
}
else
{
Toast.MakeText(this, "Your Feedback is not Saved", ToastLength.Long).Show();
}
};
}
WebAPI 的图像:
解决方案
这取决于您的开发环境设置,如果您使用的是真实手机,那么您必须确保您的 PC 和您的手机在同一个网络上,并且相应的端口号在您的 PC 防火墙中打开手机无法访问的其他地方服务。
推荐阅读
- matlab - if、elseif、else 语句将无法正确执行
- jenkins - 使用 pipenv 在 jenkins 上运行 unittest 需要很长时间
- javascript - 将数组作为字符串转换为数组javascript
- php - 如何在 PHP 中每小时增加金额?
- c++ - std::vector::emplace 与放置新
- sql - 使用 SQL,如何获取满足多个条件之一的行以及显示满足哪个确切条件的附加布尔列
- excel - 如何使用插件 excel 中的宏?
- javascript - 向多个元素添加 DOM-event 并影响儿童的风格
- r - lapply 意外更改数据
- perl - 如何使用“use strict”导入常量,避免“不能使用bareword ...作为ARRAY ref”