我正在做一个xamarin应用程序,我想用python连接器将它连接到mysql数据库,我不知道如何在c#xamarin代码和python连接器之间交换信息。例如,我想将用户在xamarin应用程序中输入的登录信息发送到数据库。
python代码:
import mysql.connector
import requests
from datetime import date, datetime,timedelta
cnx = mysql.connector.connect(user='root',password='root',
database='user_account', host='localhost', port='3310')
cursor = cnx.cursor()
params = {'key1' : 'value1', 'key2' : 'value2', 'key3' : 'value3'}
r = self.request.GET.get('email')
print(r)
add_user = ("INSERT INTO login_info " "(email, password, date) " "VALUES (%s,%s,%s)")
user_data = (params[0], params[1], params[2])
cursor.execute(add_user, user_data)
cnx.commit()
cursor.close()
cnx.close()
c代码:
public static void AddUserToDatabase()
{
WebClient client = new WebClient();
Uri uri = new Uri("http://localhost/login.py");
NameValueCollection postData = new NameValueCollection();
postData.Add("email", "testEmail@email.com");
postData.Add("password", "superTestPassword");
postData.Add("date", DateTime.Now.ToShortDateString());
Encoding.UTF8.GetString(client.UploadValues(uri, postData));
}
谢谢你的回答。
1条答案
按热度按时间wlsrxk511#
编辑:我误解了你使用mysql的目的。
好的,对于初学者来说,互联网上有大量已有的资源和stackoverflow来帮助回答这个问题。
这是从一段时间以前,但仍应工作。
不要在应用程序中建立与数据库的直接连接。取而代之的是,通过webapi或者使用像azure这样的系统。有很多方法可以从应用程序中提取c代码,坦白地说,它们非常常见,因此如果您的xamarin代码中有登录凭据,请想象它们是公共的。