Я использую NodeJs и MongoDb в качестве серверной службы в приложении android. Я использую Retroft2 в качестве сетевой библиотеки в своем приложении. Я отправляю почтовый запрос на сервер для удаления элемента из базы данных. Я получаю успех сообщение с сервера, но элемент не удаляется из базы данных, но когда я отправляю запрос от почтальона, он удаляет элемент правильно.
Ниже мой код:
ApiService. java
public interface ApiService {
@POST("removeBookmark")
@FormUrlEncoded
Observable<String> removeBookmark(@Field("uid") String uid,
@Field("title") String title);
}
MainActivity. java
private void removeBookmark(String title,String uid){
Retrofit retrofit = RetrofitClient.getInstance();
ApiService apiService = retrofit.create(ApiService.class);
apiService.removeBookmark(title,uid).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(String s) {
Toast.makeText(getActivity(),s,Toast.LENGTH_SHORT).show();
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});
}
Ниже мой код на стороне сервера:
removeBookmark. js
const express = require('express');
const router = express.Router();
const bodyParser = require('body-parser');
const MongoClient = require('mongodb').MongoClient;
const dotEnv = require('dotenv').config();
const dburl = process.env.URL;
router.use(bodyParser.json());
router.use(bodyParser.urlencoded({extended:true}));
router.post('/removeBookmark',(req,res) => {
const uId = req.body.uid;
const title = req.body.title;
MongoClient.connect(dburl,{useNewUrlParser:true,useUnifiedTopology:true},(err,client) => {
if(err){
console.log("Error",err);
}
else{
const coll = client.db("MyDb").collection("MyCollection");
coll.deleteOne({$and:[{userid:uId},{title:title}]},(err,obj) => {
if(err){
console.log("Error",err);
}
else{
res.send("removed");
client.close();
}
});
}
});
});
module.exports = router;
Кто-нибудь, пожалуйста, дайте мне знать, что я делаю неправильно, любая помощь будет оценена.
СПАСИБО