Flickr'无效的身份验证令牌(98)'从Asp.net应用程序上传视频

pat*_*719 8 c# asp.net flickr

我试图允许用户使用FlickrNet库/ API从Asp.net应用程序上传视频到Flickr.我从Flickr获得了API密钥和API秘密.另外,我正在使用FlickrNet库中的AuthGetFrob方法检索authToken.

我的使用陈述如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using FlickrNet;
Run Code Online (Sandbox Code Playgroud)

我创建了两种方法来完成这项任务.

获取并返回AuthToken的一个

private string GetAuthenticateToken()
{
    Flickr flickr = new Flickr(FLICKR_API_KEY, FLICKR_API_SECRET);

    string frob = flickr.AuthGetFrob();

    return flickr.AuthCalcUrl(frob, AuthLevel.Write);
}
Run Code Online (Sandbox Code Playgroud)

一个使用AuthToken上传文件

public void UploadFile(string fileName, string title, string description)
{
    try
    {

        string authToken = GetAuthenticateToken();

        Flickr flickr = new Flickr(FLICKR_API_KEY, FLICKR_API_SECRET, authToken);


        string photoId = flickr.UploadPicture(fileName, title, description, "", true, false, false);
        }
    catch (Exception ex)
    {
        throw ex;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我调用'UploadPicture'时,会抛出以下异常.'无效的身份验证令牌(98)'.

AuthRequest Http请求的内容如下所示.

<?xml version="1.0" encoding="utf-8" ?>
<rsp stat="ok">
<frob>72157627073829842-9d8e31b9dcf41ea1-162888</frob>
</rsp>
Run Code Online (Sandbox Code Playgroud)

并且上传方法Http请求的内容如下所示.

<?xml version="1.0" encoding="utf-8" ?>
<rsp stat="fail">
    <err code="98" msg="Invalid auth token" />
</rsp>
Run Code Online (Sandbox Code Playgroud)

我在这里的flickr论坛上看到了类似的帖子,但根据我的理解,似乎我正在做的一切正确但仍然无法弄清楚我做错了什么.

任何帮助将不胜感激.

pat*_*719 5

好吧所以我讨厌回答我自己的问题,特别是那些没有得到选票,没有答案,也没有得到很少意见的问题,但是我从Flickr的支持中得到了答案,所以我想我也可以在这里发布.如果有人认为这是有用的.

AuthCalcUrl返回一个URL,而不是实际的身份验证令牌.此外,更多的是桌面身份验证,而不是基于Web的身份验证.您链接到的论坛帖子正在谈论移动身份验证.对于Web身份验证,您需要 按照此处详述的流程进行操作: 因此,您调用Flickr.AuthCalcWebUrl,然后将用户重定向到该URL.然后,当他们进行身份验证后,他们将被发送到您在API密钥设置中设置的回拨网址.此网址将包含一个frob.然后最后在回调网址页面中,您从查询字符串中获取frob并调用Flickr.AuthGetToken(frob); 如果要查看此操作,请从示例页面下载示例ASP.Net网站.