実際にtwitterizerによってつぶやきを自動的に送信し、別のURLのapi JSONデータからデータを取得します。しかし、私はテキストボックスにURLを入れて、それは正常に動作し、私はテキストボックスからデータを取得しているが、プロセスが "承認のアプリ"に行くときに私は "認可"ボタンを押してページロード再び["textbox"]はnullです。以下は、前のedコードです。私はWebフォームでSubmitボタンを押した後にTextboxの値を一度保持する方法
<form id="form1" runat="server" action="TwitterStrap.aspx" >
<div style="position:absolute">
<input type="text" id="text1" name="txtFirstName" placeholder="Enter Your First Name" />
<br />
<input id="Submit1" type="submit" value="submit" />
</div>
</form>
をTwitterStrap.aspxする "Frontsheet.aspx" のように1ページからのデータを掲載していますそして、これはTwitterStrap.aspx.csコード
protected void Page_Load(object sender, EventArgs e)
{
var text="";
if (!IsPostBack)
{
text = Request.Form["txtFirstName"];
}
using (var webClient = new System.Net.WebClient())
{
var jsonString = webClient.DownloadString(text);
ProductsJsonModel Data = JsonConvert.DeserializeObject<ProductsJsonModel>(jsonString);
List<Product> ProductsFromUrl = Data.products; // All of your products are here.
// Your code
Session["value"] = ProductsFromUrl;
var title="";
var cnt = ProductsFromUrl.Count;
for (int i = 0; i < cnt; i++)
{
title = ProductsFromUrl[0].title;
}
var oauth_consumer_key = "myLtWOTLGtLsjNsm15tUUpdEX";
var oauth_consumer_secret = "uC9yHjPPV83Olvq0I8zt9eMwyucIpUcO70NduqNx0JuPQVyDZB";
if (Request["oauth_token"] == null)
{
OAuthTokenResponse reqToken = OAuthUtility.GetRequestToken(
oauth_consumer_key,
oauth_consumer_secret,
Request.Url.AbsoluteUri);
Response.Redirect(string.Format("http://twitter.com/oauth/authorize?oauth_token={0}",
reqToken.Token));
}
else
{
string requestToken = Request["oauth_token"].ToString();
string pin = Request["oauth_verifier"].ToString();
var tokens = OAuthUtility.GetAccessToken(
oauth_consumer_key,
oauth_consumer_secret,
requestToken,
pin);
OAuthTokens accesstoken = new OAuthTokens()
{
AccessToken = tokens.Token,
AccessTokenSecret = tokens.TokenSecret,
ConsumerKey = oauth_consumer_key,
ConsumerSecret = oauth_consumer_secret
};
//TwitterResponse<TwitterStatus> response = TwitterStatus.Update(
// accesstoken,
// "Testing!! It works (hopefully).");
Twitterizer.TwitterResponse<TwitterStatus> response = TwitterStatus.Update(accesstoken, title, new StatusUpdateOptions() { UseSSL = true, APIBaseAddress = "http://api.twitter.com/1.1/" });
if (response.Result == RequestResult.Success)
{
Response.Redirect("https://twitter.com/");
}
else
{
Response.Redirect("https://twitter.com/");
}
}
}
}
それを確認してくださいフォームが送信されなかった場合にのみ発生します。フォームが送信されなかった場合は、最初のSD名のrequest.formはありません。 – Joel
Joelありがとう、どうすればいいですか? –
答えを参照してくださいCodingYoshi – Joel