【发布时间】:2017-02-22 23:02:57
【问题描述】:
我正在开发一个应用程序。我已经使用 OAuth 完成了登录。现在我想将图像发布到我的 Twitter 帐户。但每次我收到容量超过错误消息时。我在将我的字符串转换为 Base64 后尝试使用媒体和 media_data。我正在尝试使用 Ionic 和 Angular JS。你也可以建议我有任何其他解决方案。 我的代码如下。
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)
});
任何机构都可以帮助我解决这个问题。
【问题讨论】:
-
你的图片有多大?它仅适用于发送推文吗?让我们知道您的总尺寸。谢谢!
-
@Gene 图片小于 5Mb,仅适用于 Tweet。
-
尝试将其降低到 3mb 以下并尝试。
-
@Gene 我也试过 100kb ..:(
-
任何解决方案??
标签: angularjs cordova twitter ionic-framework angular-http