我正在尝试使用Reddit API来保存帖子.我知道我格式化请求错误,但我似乎无法找到有关如何正确执行此操作的任何文档.如果有人能够引导我朝着正确的方向前进,或者帮我正确地格式化请求.这就是我到目前为止所拥有的.
public void save(View v)
{
OkHttpClient client = new OkHttpClient();
String authString = MainActivity.CLIENT_ID + ":";
String encodedAuthString = Base64.encodeToString(authString.getBytes(),
Base64.NO_WRAP);
System.out.println("myaccesstoken is: "+ myaccesstoken);
System.out.println("the image id is: "+ myimageid);
Request request = new Request.Builder()
.addHeader("User-Agent", "Sample App")
.addHeader("Authorization", "Bearer " + myaccesstoken)
.addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")
.url("https://oauth.reddit.com/api/save.json?")
.post(RequestBody.create(MediaType.parse("application/x-www-form-urlencoded"),
""+ myimageid +
"1"))
.build();
client.newCall(request);
}
Run Code Online (Sandbox Code Playgroud)
我对使用API非常新,我不确定我在寻找什么.以下是reddit API的保存链接
https://www.reddit.com/dev/api/oauth#POST_api_save
预先感谢您的任何帮助!!!
所以基本上我有一个需要很多用户输入的批处理文件.我想知道在询问问题时是否有可能存在任何填充数据,如果用户需要更改某些内容,他们可以编辑该数据.例如
然后用户输入他们的名字和姓氏.

但是,是否可以从默认名称开始,用户可以返回并在需要时进行编辑?
这可能不是必需的,但这是我用于用户输入的代码.
Set /p "Author=Please enter your name: "
Run Code Online (Sandbox Code Playgroud)
而且我理解作者对预设数据没有多大意义,但是在其他情况下我会这样做有用.可能吗?
我正在编辑XML文件,大约前10行是注释.并且对于xml注释在表单中
<!-- COMMENT HERE -->
Run Code Online (Sandbox Code Playgroud)
但是当使用我的代码时,它不会输出!mark,它搞砸了xml中的注释.据我所知,ENABLEDELAYEDEXPANSION这样做是因为它认为感叹号正在扩展变量.我怎么能让这个工作?
这是我的代码如下
setlocal ENABLEDELAYEDEXPANSION
set line=0
FOR /f "usebackqdelims=" %%a in ("%filename2%") do (
set /a line = !line!+1
if !line!==39 (echo REPLACED TEXT39>>%tempfile%
)else if(!line!==45 (echo REPLACED TEXT45>>%tempfile%
)else (echo %%a>>%tempfile%
))
Run Code Online (Sandbox Code Playgroud)
EDIT1基本上它应该做的是按原样输出每一行,除非它是39行或45行.它可以工作,除了!评论中的标记不会输出,它们不再是评论.
EDIT2
set line=0
FOR /f "usebackqdelims=" %%a in ("%filename2%") do (
setlocal ENABLEDELAYEDEXPANSION
set /a !line! +=1
echo !line!
if !line!==39 (
echo REPLACED TEXT39>>%tempfile%
endlocal
)else if !line!==45 (
echo REPLACED TEXT45>>%tempfile%
endlocal
)else (
endlocal
setlocal DISABLEDELAYEDEXPANSION
echo …Run Code Online (Sandbox Code Playgroud) 我正在尝试将文件写入临时文件夹,但它没有正确执行.当我稍后进入代码调用它时,它引用了正确的位置,但表示它不存在.关于我做错了什么的任何想法?
ofstream fout("%TEMP%\\test.bat");
fout << "cd C:\\Users\\jrowler\\Documents" << endl;
//Some more fout commands to write to bat
fout.close();
wchar_t cmdline[] = L"cmd.exe /C %TEMP%\\test.bat";
if (!CreateProcess(NULL, cmdline, NULL, NULL, false, CREATE_UNICODE_ENVIRONMENT,
(LPVOID)env.c_str(), NULL, &si, &pi))
{
std::cout << GetLastError();
abort();
}
Run Code Online (Sandbox Code Playgroud)
如果我不想使用TEMP文件夹,一切正常.如果我想把它放在我的桌面上,它的效果非常好.任何想法为什么环境变量在创建时无法正常工作,但在尝试创建过程时,它会给出一个引用环境变量指定的正确位置的错误.