Angularjs 在Twitter上发布图片
我正在开发一个应用程序。我已经使用OAuth完成了登录。现在我想在我的Twitter帐户上发布一张图片。但每次我都会通过错误消息获得容量。在将字符串转换为Base64后,我尝试使用media和media_数据。我尝试使用Ionic和Angular JS。您也可以向我推荐任何其他解决方案。 我的代码如下Angularjs 在Twitter上发布图片,angularjs,cordova,twitter,ionic-framework,angular-http,Angularjs,Cordova,Twitter,Ionic Framework,Angular Http,我正在开发一个应用程序。我已经使用OAuth完成了登录。现在我想在我的Twitter帐户上发布一张图片。但每次我都会通过错误消息获得容量。在将字符串转换为Base64后,我尝试使用media和media_数据。我尝试使用Ionic和Angular JS。您也可以向我推荐任何其他解决方案。 我的代码如下 var clientId = "**************"; var clientSecret = "*****************"; /
var clientId = "**************";
var clientSecret = "*****************";
/** Twitter oauth for User Details **/
// Accessing profile info from twitter
var oauthObject = {
oauth_consumer_key: clientId,
oauth_nonce: $cordovaOauthUtility.createNonce(10),
oauth_signature_method: "HMAC-SHA1",
oauth_token: token.oauth_token,
oauth_timestamp: Math.round((new Date()).getTime() / 1000.0),
oauth_version: "1.0"
};
var signatureObj = $cordovaOauthUtility.createSignature("POST", "https://upload.twitter.com/1.1/media/upload.json" , oauthObject, { }, clientSecret, token.oauth_token_secret);
$http.defaults.headers.common.Authorization = signatureObj.authorization_header;
//$http.post(url, {media_data: 'base64'},{headers: { 'Content-Type': 'multipart/form-data'}}).success(function(
$http.post(url, {media: 'Image URL'},{headers: { 'Content-Type': 'multipart/form-data'}}).success(function(result) {
console.log(result)
})
.error(function(result) {
console.log(result)
});
任何人都可以帮助我解决这个问题。我尝试了以下方法:
我在Post请求中发送了Base64字符串
var MEDIA_UPLOAD_URL = 'https://upload.twitter.com/1.1/media/upload.json';
//A custom function in Twitte Api
postMedia: function (base64Media, parameters) {
return postRequest(MEDIA_UPLOAD_URL, {media: base64Media}, parameters);
},
你的形象有多大?它只适用于发送推文吗?请告诉我们您的总尺码。谢谢@Gene图像小于5Mb,仅适用于推特。尝试将其降低到3mb以下,然后再试。@Gene我也尝试了100kb。:(任何解决方案??Selam Muhammad,谢谢你的帮助,什么是参数?你知道吗?@Ozi参数是可选参数。前两个参数很重要。URL和ImageString。