java - com.google.gson.stream.MalformedJsonException

标签 java php android

我正在尝试使用改造将图像上传到本地服务器。下面是我的 php 代码。

<?php

require 'init.php';

if ($con) {

  $title = $_POST['title'];
  $image = $_POST['image'];

  $upload_path = "uploads/$title.jpg";

  $sql = "insert into imageinfo(title,path) values('$title', '$upload_path');";

  if (mysqli_query($con, $sql)) {

    file_put_contents($upload_path, base64_decode($image));
    echo json_encode(array('response' => "Image uploaded successfully."));
  } else {
    echo json_encode(array('response' => "Error! Image is not uploaded."));
  } 

  mysqli_close($con);

} 

?>

但我收到如下错误:com.google.gson.stream.MalformedJsonException 使用 JsonReader.setLenient(true) 接受第 1 行第 1 列路径 $ 处格式错误的 JSON

然后我在初始化retrofit的类中添加了以下代码。

Gson gson = new GsonBuilder().setLenient().create();
retrofit = new Retrofit.Builder().baseUrl(BASE_URL).addConverterFactory(GsonConverterFactory.create(gson)).build();

现在我收到以下错误:com.google.gson.JsonSyntaxException: java.lang.illegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

哪里出了问题? php代码有什么问题吗?

最佳答案

Gson gson = new GsonBuilder().setLenient(true).create();

试试这个。

关于java - com.google.gson.stream.MalformedJsonException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44928881/

相关文章:

php - 如何使用 phonegap 发送推送通知并解析

java - JBoss 7.1 支持状态?

java - 未为 Main 类型定义方法 collectFrom(List<Integer>)

php - 查找并替换数据库修改脚本中的所有内容以返回受影响的行

android - Google Play 商店中的 QA 和 PROD 应用程序

java - 是否可以远程查看用户的设备?

java - 无法让 PowerShell 读取 * 字符

java - 我是否应该考虑对 Spring Rest Controller 层使用 DTO 而不是实体?

php - List.js 模糊搜索中的 radio 输入未进入 POST

php - 当 SSH 进入但不是通过 cron 时,运行 PHP 文件可以正常工作