質問編集履歴
6
質問に追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -150,6 +150,43 @@
|
|
150
150
|
|
151
151
|
PostmanでAPIキーなどを入力して、正しいレスポンスを得られた時のリクエストヘッダーを参考にどこが悪いのか探ったのですが、どうもSyncerのPHPの例文で言う所の「$signature」、つまり署名(?)がPostmanで得られたものよりも倍近く長いのがいけないのではないかと言うところまでは分かったのですが、どのように直せば良いのかが分からずにいます。
|
152
152
|
|
153
|
+
|
154
|
+
・・・追記
|
155
|
+
OAuthSwiftを使うと良いと言う修正依頼を頂いたので試してみたのですが、
|
156
|
+
```Swift
|
157
|
+
|
158
|
+
import UIKit
|
159
|
+
import OAuthSwift
|
160
|
+
|
161
|
+
class ViewController: UIViewController {
|
162
|
+
// create an instance and retain it
|
163
|
+
var oauthswift = OAuth1Swift(
|
164
|
+
consumerKey: "xxxxxxxxxxxxxxxxxxxxxxxxx",
|
165
|
+
consumerSecret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
|
166
|
+
requestTokenUrl: "https://api.twitter.com/oauth/request_token",
|
167
|
+
authorizeUrl: "https://api.twitter.com/oauth/authorize",
|
168
|
+
accessTokenUrl: "https://api.twitter.com/oauth/access_token"
|
169
|
+
)
|
170
|
+
|
171
|
+
override func viewDidLoad() {
|
172
|
+
super.viewDidLoad()
|
173
|
+
// authorize
|
174
|
+
_ = oauthswift.authorize(
|
175
|
+
withCallbackURL: "swifter-xxxxxxxxxxxxxxxxxxxxxxxxx://") { result in
|
176
|
+
switch result {
|
177
|
+
case .success(let (credential, _, _)):
|
178
|
+
print(credential.oauthToken)
|
179
|
+
print(credential.oauthTokenSecret)
|
180
|
+
// Do your request
|
181
|
+
case .failure(let error):
|
182
|
+
print(error.localizedDescription)
|
183
|
+
}
|
184
|
+
}
|
185
|
+
}
|
186
|
+
}
|
187
|
+
```
|
188
|
+
・・・でログインできたのですが、コンソールには何もprintされず、リクエストトークン もリクエストトークン シークレットも得られない状態です。ちなみにログイン画面はSafariになっています。
|
189
|
+
|
153
190
|
### 補足情報(FW/ツールのバージョンなど)
|
154
191
|
|
155
192
|
ここにより詳細な情報を記載してください。
|
5
質問を修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -26,7 +26,7 @@
|
|
26
26
|
|
27
27
|
```Swift
|
28
28
|
import UIKit
|
29
|
-
import CommonCrypto
|
29
|
+
import CommonCrypto// <------ HMAC-SHA1方式のハッシュ値を作る際に使いました。
|
30
30
|
|
31
31
|
class ViewController: UIViewController {
|
32
32
|
|
4
質問を微修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -146,7 +146,7 @@
|
|
146
146
|
|
147
147
|
SyncerJP(https://syncer.jp/Web/API/Twitter/REST_API/#section-2-3 )というサイトを参考にしながらコードを書いてみたのですが、例文がSwiftではなくPHPで、PHPはサッパリ分からないためどこをどう直せば良いか分かりません。
|
148
148
|
|
149
|
-
他にも「TwitterAPI ツイート 投稿」などで検索したのですが、フレームワークを使っている例文が多く、また
|
149
|
+
他にも「TwitterAPI ツイート 投稿」などで検索したのですが、フレームワークを使っている例文が多く、またその記事も古いせいか参考にはなりませんでした。
|
150
150
|
|
151
151
|
PostmanでAPIキーなどを入力して、正しいレスポンスを得られた時のリクエストヘッダーを参考にどこが悪いのか探ったのですが、どうもSyncerのPHPの例文で言う所の「$signature」、つまり署名(?)がPostmanで得られたものよりも倍近く長いのがいけないのではないかと言うところまでは分かったのですが、どのように直せば良いのかが分からずにいます。
|
152
152
|
|
3
質問を微修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -144,7 +144,7 @@
|
|
144
144
|
### 試したこと
|
145
145
|
ここに問題に対して試したことを記載してください。
|
146
146
|
|
147
|
-
SyncerJP(https://syncer.jp/Web/API/Twitter/REST_API/#section-2-3)というサイトを参考にしながらコードを書いてみたのですが、例文がSwiftではなくPHPで、PHPはサッパリ分からないためどこをどう直せば良いか分かりません。
|
147
|
+
SyncerJP(https://syncer.jp/Web/API/Twitter/REST_API/#section-2-3 )というサイトを参考にしながらコードを書いてみたのですが、例文がSwiftではなくPHPで、PHPはサッパリ分からないためどこをどう直せば良いか分かりません。
|
148
148
|
|
149
149
|
他にも「TwitterAPI ツイート 投稿」などで検索したのですが、フレームワークを使っている例文が多く、またフレームワークを使っていない例文もあるにはあったのですが、古いせいか参考にはなりませんでした。
|
150
150
|
|
2
質問を微修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -115,9 +115,6 @@
|
|
115
115
|
task.resume()
|
116
116
|
}
|
117
117
|
|
118
|
-
// func urlEncode(string: String) -> String {
|
119
|
-
// return string.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed)!
|
120
|
-
// }
|
121
118
|
func urlEncode(beforeText: String) -> String {
|
122
119
|
// RFC3986 に準拠
|
123
120
|
// 変換対象外とする文字列(英数字と-._~)
|
1
質問を微修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
+
Swiftを勉強し始めて3ヶ月目に入ったところの初心者です。
|
4
|
+
|
3
|
-
フレームワーク・ライブラリに頼らずユーザーに認証してもらいユーザーがツイートできるアプリを作ろうとしています。
|
5
|
+
フレームワーク・ライブラリに頼らずTwitterAPIを叩いてユーザーに認証してもらい、ユーザーがツイートできるTwitterクライアントアプリを作ろうとしています。
|
4
6
|
|
5
7
|
ここに質問の内容を詳しく書いてください。
|
6
8
|
(例)PHP(CakePHP)で●●なシステムを作っています。
|