【发布时间】:2020-03-10 13:49:29
【问题描述】:
我创建了一个使用 Twit(twitter api) 的 Node 应用程序,以允许我的 ionic/Angular 应用程序在 twitter 上发布推文,但是我遇到的这个问题是我在设置 REST 时收到 404 错误消息方法来发布,它似乎与 GET 方法一起使用。
但我不知道如何从 Ionic 应用程序动态更改节点应用程序中的数据。
我想更改用户信息和正在发送的消息,但我不知道从哪里开始。如果有人能指导我,那将不胜感激。
这是我的 Node server.js 文件
const express = require('express');
const Twitter = require('twit');
const app = express();
const client = new Twitter({
consumer_key: '...',
consumer_secret: '...',
access_token: '...',
access_token_secret: '...',
});
app.use(require('cors')());
app.use(require('body-parser').json());
app.post('/post_tweet', (req, res) => {
tweet = {status:"Random"};
client
.post(`statuses/update`, tweet)
.then(timeline => {
console.log(timeline);
res.send(timeline);
})
.catch(error => {
res.send(error);
});
});
app.listen(3000, () => console.log('Server running'));
这是我在 Ionic 应用程序中的 twitter 服务
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { map } from 'rxjs/operators';
@Injectable({
providedIn: 'root'
})
export class TwitterserviceService {
api_url = 'http://localhost:3000';
constructor(private http: HttpClient) { }
tweet(tweetdata: string) {
return this.http.get<any>(`${this.api_url}/post_tweet`)
.pipe(map(tweet => {
alert("tweet posted")
return tweet;
}));
}
}
这是我用来发送帖子的方法,但是消息“这有效”并没有发布,而是节点应用程序中的默认消息是“随机”发送的
sendTweet() {
this.api.tweet('this works')
.pipe(first())
.subscribe(
data => {
console.log('yes')
},
error => {
'failed'
});
}
【问题讨论】:
标签: node.js angular rest ionic-framework twitter