【问题标题】:How to use OkHTTP (on android) to store primitive data types on MySQL如何使用 OkHTTP(在 android 上)在 MySQL 上存储原始数据类型
【发布时间】:2017-01-24 08:08:35
【问题描述】:

我想做的事:
在本地计算机上托管的数据库中存储 8 个字符串和 2 个作为单行的字符串(最终我想将其移至在线,我只是使用本地 mysql 进行测试)。


我实现了 OkHTTP:

client = new OkHttpClient.Builder()
        .connectTimeout(10, TimeUnit.SECONDS)
        .writeTimeout(10, TimeUnit.SECONDS)
        .readTimeout(10, TimeUnit.SECONDS)
        .build();

request = new Request.Builder()
        .url(url)
        .build();

并且有:

String postMessage = "{ \"mIDNumber\": \""+mIDNumber+
   "\n \", \"mType\": \""+mType+
   "\n \", \"mAddress\": \""+mAddress+
   "\n \", \"mOwner\": \""+mOwner+
   "\n \", \"mContactName\": \""+mContactName+
   "\n \", \"mContactNumber\": \""+mContactNumber+
   "\n \", \"mComments\": \""+mComments+"\" }";

作为我要发送到服务器的内容

我的发帖方式是:

String post(String url, String json) throws IOException {
        RequestBody body = RequestBody.create(JSON, json);
        Log.v("JSON:",json);
        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .build();
        Response response = client.newCall(request).execute();
        return response.body().string();
    }

我要发送到的网址是我的桌面 (http://192.168.0.100:3306)

我不太确定自己做错了什么,因为当我尝试发帖时,我收到了一个协议异常“意外状态行:N������”(是的,带有那些奇怪的 ? 符号)。

另外,我是否需要一个 PHP 页面来提供这些数据?我可以直接将它提供给 mySQL 服务器吗?

感谢任何和所有的帮助。

【问题讨论】:

  • 不,您不能直接从您的应用程序将数据写入远程数据库

标签: android mysql sql-server okhttp


【解决方案1】:

我建议您查看 Retrofit(http://www.vogella.com/tutorials/Retrofit/article.html) 或 Volley (https://code.tutsplus.com/tutorials/an-introduction-to-volley--cms-23800),这两个工具都具有易于使用的 JSON 解析器。

在 Retrofit 中使用 OkHTTP 真的很容易。

我更喜欢 Retrofit,因为它使用起来更纤薄。

【讨论】:

    猜你喜欢
    • 2014-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 2023-03-17
    • 2015-02-10
    • 1970-01-01
    相关资源
    最近更新 更多