��权限没有,则隐藏 function forum_list_access_filter($forumlist, $gid, $allow = 'allowread') { global $grouplist; if (empty($forumlist)) return array(); if (1 == $gid) return $forumlist; $forumlist_filter = $forumlist; $group = $grouplist[$gid]; foreach ($forumlist_filter as $fid => $forum) { if (empty($forum['accesson']) && empty($group[$allow]) || !empty($forum['accesson']) && empty($forum['accesslist'][$gid][$allow])) { unset($forumlist_filter[$fid]); } unset($forumlist_filter[$fid]['accesslist']); } return $forumlist_filter; } function forum_filter_moduid($moduids) { $moduids = trim($moduids); if (empty($moduids)) return ''; $arr = explode(',', $moduids); $r = array(); foreach ($arr as $_uid) { $_uid = intval($_uid); $_user = user_read($_uid); if (empty($_user)) continue; if ($_user['gid'] > 4) continue; $r[] = $_uid; } return implode(',', $r); } function forum_safe_info($forum) { //unset($forum['moduids']); return $forum; } function forum_filter($forumlist) { foreach ($forumlist as &$val) { unset($val['brief'], $val['announcement'], $val['seo_title'], $val['seo_keywords'], $val['create_date_fmt'], $val['icon_url'], $val['modlist']); } return $forumlist; } function forum_format_url($forum) { global $conf; if (0 == $forum['category']) { // 列表URL $url = url('list-' . $forum['fid'], '', FALSE); } elseif (1 == $forum['category']) { // 频道 $url = url('category-' . $forum['fid'], '', FALSE); } elseif (2 == $forum['category']) { // 单页 $url = url('read-' . trim($forum['brief']), '', FALSE); } if ($conf['url_rewrite_on'] > 1 && $forum['well_alias']) { if (0 == $forum['category'] || 1 == $forum['category']) { $url = url($forum['well_alias'], '', FALSE); } elseif (2 == $forum['category']) { // 单页 $url = ($forum['threads'] && $forum['brief']) ? url($forum['well_alias'] . '-' . trim($forum['brief']), '', FALSE) : url($forum['well_alias'], '', FALSE); } } return $url; } function well_forum_alias() { $forumlist = forum_list_cache(); if (empty($forumlist)) return ''; $key = 'forum-alias'; static $cache = array(); if (isset($cache[$key])) return $cache[$key]; $cache[$key] = array(); foreach ($forumlist as $val) { if ($val['well_alias']) $cache[$key][$val['fid']] = $val['well_alias']; } return array_flip($cache[$key]); } function well_forum_alias_cache() { global $conf; $key = 'forum-alias-cache'; static $cache = array(); // 用静态变量只能在当前 request 生命周期缓存,跨进程需要再加一层缓存:redis/memcached/xcache/apc if (isset($cache[$key])) return $cache[$key]; if ('mysql' == $conf['cache']['type']) { $arr = well_forum_alias(); } else { $arr = cache_get($key); if (NULL === $arr) { $arr = well_forum_alias(); !empty($arr) AND cache_set($key, $arr); } } $cache[$key] = empty($arr) ? '' : $arr; return $cache[$key]; } ?>imgur - imgurpython's create_album fails - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

imgur - imgurpython's create_album fails - Stack Overflow

programmeradmin4浏览0评论

Caveat: Yes, I know that imgpurpython is not maintained, this has however worked for me quite recently.

I have a simple python3 application that uses the OAuth authorization to call into imgur's API. I mainly use it to upload small sets (4, maybe 5) of images at once, and add them all to an album.

Up until recently, the application worked quite well, and would upload the images and add them to a (hidden) album. The album just makes it easier for me to see the images grouped on the imgur posts page.

Today I was trying to do this again after several months. The application ran fine, and uploaded all 3 images, but then failed to create the album, saying

imgurpython.helpers.error.ImgurClientError: (400) Unable to decode request body

The request data for the album creation uses the correct url, it has a sane body (as prescribed by the imgur API documentation). Has imgur changed its API without updating the Documentation?

PS: I don't exceed the usage limits, and I don't upload insensitive stuff. I don't think I'm being throttled or anything, because I've re-tried the application a couple of times now, and the image uploading always works - only the album creation fails.

EDIT: Here is the request details, which I print out by modifying imgurpython right before executing the request:

method_to_call: <function post at 0x1035b42c0>
url: 
header: {
  'Authorization': 'Bearer [...]'},
  data: {
    'privacy': 'hidden', 
    'title': 'test'
  }

I know the 'privacy' entry is deprecated, but it has not been sunset yet, according to the API documentation.

This fails with the following error response:

error: {'status': 400, 'success': False, 'data': {'error': 'Unable to decode request body', 'request': '/3/album', 'method': 'POST'}}
发布评论

评论列表(0)

  1. 暂无评论