在 Couchbase 1.4 SDK 版本中,json 数据以元类型作为json插入,非 json 数据以元类型作为base64插入。
Couchbase 1.4 SDK 代码:
OperationFuture<Boolean> setOp = client.set(_key, expiry, value);
现在我们已经升级到 Couchbase 2.5 SDK 版本,并且正在使用下面的代码将数据插入到 Couchbase。这里不考虑 json/non-json 数据,所有数据都以 base64 元类型插入。请帮我解决这个问题。
Couchbase 2.5 SDK 代码:
if(isJSON(value)){
JsonDocument doc = JsonDocument.create(_key, JsonObject.fromJson(value.toString()));
inserted = bucket.async().upsert(doc).toBlocking().toFuture();
}else{
LegacyDocument doc = LegacyDocument.create(_key, value);
inserted = bucket.async().upsert(doc).toBlocking().toFuture();
}
我正在通过 couchbase 视图检查元类型: 在此处输入图像描述